Category: High Performance

Cache (16)
Container (6)
Files (31)
Cluster (70)
Testing (5)

A Brief Discussion on DAS, NAS, and SAN Storage Architectures

In today’s disk storage market, storage classification (see Table 1 below) is divided by server type into: closed-system storage and open-system storage. Closed systems primarily refer to mainframes, AS/400, and similar servers, while open systems refer to servers based on operating systems including Windows, UNIX, and Linux. Open-system storage is further divided into: internal storage and external storage; external storage for open systems is classified by connection method into: Direct-Attached Storage (DAS) and Fabric-Attached Storage (FAS); open-system networked storage is further divided by transport protocol into: Network-Attached Storage (NAS) and Storage Area Network (SAN). Since the vast majority of users today adopt open systems, with external storage accounting for over 70% of the current disk storage market, this article primarily discusses and explains external storage for open systems.

Storage for Large-Scale Websites

1.1 StorageStorage devices are the most fundamental layer in a website’s backend architecture. They are also the most critical component. If a storage device encounters an issue, it will directly cause services in the upper data and application layers to halt. Severe storage device damage and irrecoverable data loss can bring enormous …

How to Configure DRBD on Linux

How DRBD Works DRBD is a block device designed for High Availability (HA) scenarios. It functions like a network RAID-1. When you write data to the local file system, the data is also sent to another host on the network, where it is recorded in the same form within a file system. Local …

Three Common Ways Data Gurus Use Hadoop

As Hadoop technology evolves, from initially solving massive data storage problems for companies like Google and Facebook, to now being adopted by more and more enterprises for processing big data, Hadoop has had a profound impact on the enterprise data landscape. Understanding its common usage patterns can greatly reduce complexity. Just a few weeks ago, A …

Image Server Overhaul Plan for a Large-Scale Website

1. The current website image server structure is as follows:

2. Existing Structure Description
2.1 Mount Directory Description
All front-end web servers mount the directories exported by the three image servers via NFS to receive images written by the PHP processes on the web servers. Then, image1 mounts the e …

Rsync Usage Tips and Precautions

A recent project required using rsync to push small files. Initially, I found the efficiency to be lacking, and excessive push processes led to high load and increased iowait on the destination machine. rsync is a great tool, but it needs to be used properly. So, I’ve summarized a few key considerations.
1: When synchronizing, try to use the destination …

PHP Session Cross-Subdomain Issues Summary

Today, I ran into an issue while working on a project. Previously, when dealing with sessions, I would typically store them directly in the database, which solves cross-domain problems — not just cross-subdomain ones. But today’s issue was different: I had to make modifications on top of someone else’s existing work. Since it only involved subdomains, I was confident there had to be a simple solution. After Googling (Baidu-ing) for about 10 minutes, I got it sorted.

The Rose Portal in the Holy War

June 9, 2010, was a day of online crusade. It began right at midnight, and the main event unfolded as expected at 7 p.m. The battleground on Renren was SJ’s public page: http://page.renren.com/sj For different people, this day meant different things, with different emotions. As the Renren tech team, we had to ensure service …

Hands-on Nginx and PHP (FastCGI) Installation, Configuration and Optimization

I. What is FastCGI
FastCGI is a scalable, high-speed interface for communication between HTTP servers and dynamic scripting languages. Most popular HTTP servers support FastCGI, including Apache, Nginx, and lighttpd. At the same time, FastCGI is also supported by many scripting languages, including PHP.
FastCGI evolved and improved from CGI. The main drawback of the traditional CGI interface is poor performance, because every time the HTTP server encounters a dynamic program it needs to restart the script parser to perform parsing, and then the result is returned to the HTTP server. When handling high-concurrency access, this is almost unusable. Additionally, the traditional CGI interface method has poor security and is now rarely used.
The FastCGI interface method uses a C/S architecture, allowing the HTTP server and the script parsing server to be separated, while starting one or more script parsing daemon processes on the script parsing server. Whenever the HTTP server encounters a dynamic program, it can directly deliver it to the FastCGI process for execution, and then return the obtained result to the browser. This method allows the HTTP server to focus on handling static requests or returning the results of the dynamic script server to the client, which greatly improves the performance of the entire application system.