Application Architecture
Hi all,
Although I work in pharmaceuticals, I am also a pretty decent programmer and web developer. I am launching my first website in January of next year, and as of right now I am designing the "system architecture" of all the applications that will be used to control the website (co-hosted), as well as to interact with users -- this is the most crucial/fundamental element of the project''s design. Below is my proposed architecture, and I was just hoping to get some feedback. Am I forgetting anything? Inefficiencies? Ridiculous errors? Fess up!
Note: As for right now I have not yet decided as to whether I should: (a) use my webserver to act as the middleman between all my other server apps. and the web host''s webserver, or (b) just use my webserver for FTP to host and to have all my other sever apps. connect directly to my clients - independent of the host. I am, however, very prone to the former option as I am not confident in my ability to provide adequate security to my applications. Any commentary, suggestions, warnings, etc. here will be welcomed as well!
CURRENT ARCHITECTURE (using the former option stated above):
----------------------
1. Apache Webserver - connects my server''s control program to the web host.
2. Contral Program - The main software in the system; all other programs and files feed into program and/or its resources. Monitors all I/O messages and determines whether they can have access to their destination. Also acts as the server to user''s client program, which they download off the site.
3. PHP4/MySQL Database - In addition to the web host''s DBs, I think it''s important (necessary?) to have my own DBs for all sorts of reasons; backups, added storage, etc.
4. Admin Toolchest - this program contains the parser which allows me to modify the control program, information in the DB, and some other utility features.
5. Patch Wizard - this program provides live updates to the client program when bugs/glitches get spotted and fixed.
6. Ecom Suite - the programs control the credit card processing and other payment systems the site will feature.
So thats it, so far at least. Let me know what you think, good bad or indifferent. Thanks!
-Foogal
um, sounds fine. but i''d call that more of an item list than an architecture. but as skeletons go, that sounds pretty fine. it would help a lot if you''d tell us what the application is. it sounds like you have client machines that connect to a central server for updates.
i''m not sure why you have seperate "central servers". you seem to have your own server and a hosted server. why? what''s the difference in their roles that necessetates the application being split between 2 main servers?
-me
i''m not sure why you have seperate "central servers". you seem to have your own server and a hosted server. why? what''s the difference in their roles that necessetates the application being split between 2 main servers?
-me
Palidine:
(1) The application is a MMO gaming solution (that believe it or not requires hardly any graphics! -- and no its not a text-based MUD!)
(2) Clients can access the website to download the game''s Control Center (client to the Control Program). They can also surf the site for various reasons, participate in discussion forums, a java-based tech support chat room system, etc.
The idea is to have the (client) control centers be interactive with the (server) control program independent of their web browsers -- beyond that nothing else is in concrete. Do you think it is wiser just to have my control program link to the host''s webserver; and to then have client/server (center/program) communication occur through the host''s webserver as well?
(1) The application is a MMO gaming solution (that believe it or not requires hardly any graphics! -- and no its not a text-based MUD!)
(2) Clients can access the website to download the game''s Control Center (client to the Control Program). They can also surf the site for various reasons, participate in discussion forums, a java-based tech support chat room system, etc.
The idea is to have the (client) control centers be interactive with the (server) control program independent of their web browsers -- beyond that nothing else is in concrete. Do you think it is wiser just to have my control program link to the host''s webserver; and to then have client/server (center/program) communication occur through the host''s webserver as well?
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement