Document Scope
The Internet project [1] is built on the top of of modern technology for client-server applications. This document lists required components and describes available technology options.
Requirements
-
Scalability. The core technology should scale up to the loads handled by the best solutions available on the market. This is because a common B2C service consumes a lot of traffic and we aggregate all popular services.
-
Reliability. The service should be available always up. No data loss. The service up-time and reliability project to customer satisfaction and loyalty.
-
Performance. The core technology is able to dispatch web pages to a user not slower than the best solutions available on the market. B2C field mandates this.
-
Maintenance. The technology should include automation of routine maintenance and monitoring tasks. We are advanced technology company, and not a call center.
-
Low costs. The technology should not rely on the performance or other specific features of particular hardware. It should work well on cheap hardware and should be easily portable to the new hardware. Here we take advantage of our software development experience and competence.
Law enforcement. The service and technology are developed and maintained in a documented way which explains any concerns.
Data Center
Requirements
The project [1] requires the following configuration available at the data center provider:
-
Dedicated servers.
-
Scalable bandwidth.
-
Remote monitoring and administration.
Comparison
Most B2C applications are limited by server bandwidth.
Data Center | Service | Cost, $ per month |
http://iweb8.com/dedicated/unmetered-servers/ | A reply in four hours | $349 |
http://www.redplaid.com/ | A quick reply | $359 |
http://www.cologuys.com/services/dedservers/pentium | A quick reply | $650 |
http://www.webhosting.cx/dedicated.html | No reply to a probe email | $759 |
http://www.lighthousehosting.com/ | The outdated service web page, a quick reply | $1300 |
Conclusion
The article [1] tells that the good price for a dedicated server with a redundant 10 Mbit bandwidth is approximately $350/mo.
Server Standards
Requirements
The core technology is a background for a high quality service in a production stage. A simple server get a request from a user, searches a database for response and generates a web page as a result. More complex models includes session maintenance and asynchronous communication to a user.
- Scalability. Adding new services is a joy, programmers get a convenient API.
- Interoperability. Services share data and analytic resources.
- Performance. An average user request is served in less than 0.5 sec. This includes processing of complex data base requests.
- Reliability. The user data is replicated through network.
Usually it is a good idea to use the whole stack from one sponsor. This mandates a choice of operating system and a database.
Standard | Sponsor | Server | Client | Performance | OS | Database | Note |
Java 2 Enterprise Edition | IBM, BEA, others |
WebLogic, WebSphere, open source stack |
JavaScript | See [6] | Linux or other UNIX | DB2, Oracle | Encourages participation of third parties |
.NET | Microsoft Corp. | IIS/C# | VBScript |
Published last results on 2002 |
MS Windows | MS SQL Server | Private |
ColdFusion | Adobe Systems Inc. | ColdFusion, Flex | ActionScript | Never competed | MS Windows |
|
Private |
Conclusion
Commercial Java enterprise stack gives the best performance in the market which could be bought. While the loads increase we invest into distributed cluster based infrastructure to be ready for future challenges.
Java Server
Web Server + Servlet Container | SPECweb2005 Score |
Zeus Web Server v4.3r2 (x86-64), Apache Tomcat 5.5.11 |
2277 |
Sun Java[TM] System Web Server 6.1 SP5 (64 bit) |
16407 |
Rock Web Server v1.4.1 (x86_64), Rock JSP/Servlet Container v1.2.0 (x86_64) |
30261 |
Server + Database |
SPECjAppServer2004 Score |
WebSphere 6.1 Application Server on IBM System p 570 (4.7 GHz, 4 core) |
1197.51 |
Oracle Application Server 10G Release 10.1.3.2 - Java Edition on Rackable Systems C2002 |
1871.13 |
BEA WebLogic Server 10.0 on Sun Blade 6000 Modular System using Solaris Containers | 8253.21 |
Conclusion
We may use BEA WebLogic since it comes free of charge for development. Open source stack is an interesting investment to contact fellow travellers.
Prototyping
Open source solutions [3] should be used for quick prototyping of functionality to test project analytics. There is a number of for loads less than 30,000 customers per day. For example, Yandex uses Django [5] for prototyping which is the best solution from performance point of view: serves loads of 30000 customers per day, dispatches a web page per 0.5 seconds.
References
-
Social Network with Grading Messages and Rating Calculation.
-
Common Data Center terms and definitions, http://en.wikipedia.org/wiki/Data_center.
-
Web Tech Comparison, http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks
-
Offshore Hosting Provider for $150, http://www.clickpress.com/releases/Detailed/32110005cp.shtml
-
SPEC benchmarks, http://www.spec.org/
No comments:
Post a Comment