β β β ο½ππ»βΊπ«Δπ¬πβ β β β
π¦Establish a large-capacity Web-based Email system-FULL WRITTEN BY UNDERCODE :
βΎββββΆβββΎββΆββΎββ & βββ :
1) An Email system can be divided into a server and a client. The Email system of the Web interface puts the Email client on the Web server. Therefore, the Email system needs to implement an Email client of the Web interface. However, since this Email system requires a large number of users, there are specific requirements for the Email server.
γγβ operating system and user databases
γ2) γby providing high-capacity Email System requirements for the operating system and the database is very high, therefore, select the appropriate operating system and the database is the most basic question.
γ3) The storage of user data is usually in the form of a database that supports network access. Commonly used are ldap, standard database, and user database implemented by the email system itself. Among them, ldap is the standard for providing directory services, so it should be the best choice. Its commonly used open source code is openldap; while the standard database is easy to implement and has strong scalability, the most commonly used on the internet is mysql ; In addition, there are other ways to achieve.
γγβ save messages
γ4) γfor bulk Email system, the most critical technical issue is how to handle mail storage, the manner in which to improve storage efficiency, we will determine the success of Email system or not.
5) γγDue to the large number of users, how to save the user's mail is a very important issue. Traditional Unix uses a single directory to store the mail of all users, which greatly reduces the performance of the file system when the number of users is large. Only by using multi-level directories, the number of files in each directory is limited, can the system consumption when opening files be reduced, or a simple file is no longer used to save mail, and a certain form of encapsulation is used. The form of database is used to store the mail completely. Because the user's mail operations are mostly file operations, and the size changes greatly, it will cause a large waste of performance and storage space.
γ6) γDue to the huge number of users and the requirement to be accessed by multiple servers at the same time, servers or server clusters with large storage space must be used for storage, and the storage space must be shared through Fibre Channel or network file system NFS to make each user's mail storage The path is the same for each server. Fibre Channel is a very expensive solution. It is more common to use NFS. You can use a dedicated NFS server, such as NetApp, or use a PC Unix server with RAID capabilities.
γ7) γWhen using NFS to share storage space, you must pay attention to a very important problem: due to the lack of file locking mechanism in NFS, when using the traditional user mail storage format mailbox, because all mail is stored in the same file, so mail The operation must be locked to ensure that there is no access violation, which makes it unsuitable for NFS storage. In order to solve this problem, qmail proposed the Maildir storage method, each mail is stored as a separate file in the user's personal mail directory, to avoid locking. Therefore, common free mail servers generally use Maildir to save users' mail.
π¦Establish a large-capacity Web-based Email system-FULL WRITTEN BY UNDERCODE :
βΎββββΆβββΎββΆββΎββ & βββ :
1) An Email system can be divided into a server and a client. The Email system of the Web interface puts the Email client on the Web server. Therefore, the Email system needs to implement an Email client of the Web interface. However, since this Email system requires a large number of users, there are specific requirements for the Email server.
γγβ operating system and user databases
γ2) γby providing high-capacity Email System requirements for the operating system and the database is very high, therefore, select the appropriate operating system and the database is the most basic question.
γ3) The storage of user data is usually in the form of a database that supports network access. Commonly used are ldap, standard database, and user database implemented by the email system itself. Among them, ldap is the standard for providing directory services, so it should be the best choice. Its commonly used open source code is openldap; while the standard database is easy to implement and has strong scalability, the most commonly used on the internet is mysql ; In addition, there are other ways to achieve.
γγβ save messages
γ4) γfor bulk Email system, the most critical technical issue is how to handle mail storage, the manner in which to improve storage efficiency, we will determine the success of Email system or not.
5) γγDue to the large number of users, how to save the user's mail is a very important issue. Traditional Unix uses a single directory to store the mail of all users, which greatly reduces the performance of the file system when the number of users is large. Only by using multi-level directories, the number of files in each directory is limited, can the system consumption when opening files be reduced, or a simple file is no longer used to save mail, and a certain form of encapsulation is used. The form of database is used to store the mail completely. Because the user's mail operations are mostly file operations, and the size changes greatly, it will cause a large waste of performance and storage space.
γ6) γDue to the huge number of users and the requirement to be accessed by multiple servers at the same time, servers or server clusters with large storage space must be used for storage, and the storage space must be shared through Fibre Channel or network file system NFS to make each user's mail storage The path is the same for each server. Fibre Channel is a very expensive solution. It is more common to use NFS. You can use a dedicated NFS server, such as NetApp, or use a PC Unix server with RAID capabilities.
γ7) γWhen using NFS to share storage space, you must pay attention to a very important problem: due to the lack of file locking mechanism in NFS, when using the traditional user mail storage format mailbox, because all mail is stored in the same file, so mail The operation must be locked to ensure that there is no access violation, which makes it unsuitable for NFS storage. In order to solve this problem, qmail proposed the Maildir storage method, each mail is stored as a separate file in the user's personal mail directory, to avoid locking. Therefore, common free mail servers generally use Maildir to save users' mail.
8) γγIf you do not intend to use the shared file system to save user mail, but intend to let each server only access user mail on its own hard disk storage space, then both the Email server and the client need to be customized so that they can pass the user name To find the real server to which the user belongs and hand over the access task to this server. The shortcomings of this method, in addition to the required large changes and complex system structure, but also because the server is divided according to users, is not conducive to sharing the load. Its advantage is also because it does not access other servers through the network, so it can use any mail storage format, including the use of a powerful cyrus system to save mail and provide services.
γγβ mail server software
γ9) γwhat kind of Email server software will ultimately affect the performance of the system, their own set of Email server may outweigh the benefits, now have two options: Sendmail and Qmail.
γ10) γStandard Email software, such as sendmail, also provides some methods including aliases to support users of non-Unix systems, but these capabilities are not enough to implement this Email system. In order to support these Email users, they must use their own Email server software. However, since the existing Email software is quite mature, and it is also open source software, the usual practice is to modify the original Email software, such as sendmail, qmail, etc., to support specific Email users. Completely rewriting an Email service software is not desirable in terms of maturity and stability.
γγβ mail server software
γ9) γwhat kind of Email server software will ultimately affect the performance of the system, their own set of Email server may outweigh the benefits, now have two options: Sendmail and Qmail.
γ10) γStandard Email software, such as sendmail, also provides some methods including aliases to support users of non-Unix systems, but these capabilities are not enough to implement this Email system. In order to support these Email users, they must use their own Email server software. However, since the existing Email software is quite mature, and it is also open source software, the usual practice is to modify the original Email software, such as sendmail, qmail, etc., to support specific Email users. Completely rewriting an Email service software is not desirable in terms of maturity and stability.