Hi Dw

I'm planing on creating a system that will share the same database over internet. There will be one core server where the database will be located and there will be a thousands of client programs that will modify the database simultaneously over internet. I've never done something like this before and I'm seeking for advice because I'm not too sure if this won't affect the system. The database has 10 tables and each table has almost 60 fields which will be empty but be filled by the clients as they access the data base.

How can I create this kind of server program and also how can I make sure that all the data that is sent by all the clients program are saved to the correct table and fields. I must say the clients will be installed in different places and there is 100% chance that these clients can send in data at the same time to a one table and field so how can I make a server program that can be able to handle all the sent in data at the same time so that the process can be faster and be 100% accurate. I think it will be wise to crypt the data on the client side before it is sent for security purposes but I think that will slower down the process because the server will be forced to decrypt before saving.

Any resources, suggestion, guide will be appreciated

Thank you.

Recommended Answers

All 5 Replies

Ok thanks, but according to your suggestion
1) php
The problem is that it won't be much easy for me to control the access of the system if I use a website or (php) in the following reasons:
a) I wanted to plug a barcode scanner which will scan a users barcode then if the user hasn't used the system before the system can be enable and the user can make his/her choices once he/she click ok then the data will be sent to the server database straight away and his/her barcode will be captured on a server database under usedcodes table so that the user does not use twice the system.

b) the system can't be hosted elsewhere because we will need the geographic province for that user because it will also be used at a later stage so I think with a php we will be forced to create thousands of php or a file where it can read its geographic province it is being installed in.

C) it can be hacked easily.

Same problems with ASP.NET as above and the main problem with ASP.NET
Is hosting. This system will be used once after a certain years so we can't waist money and pay for domain, hosting while the system will be used once only.

So as towards you just said I just thought of then using a text files then instead of database. On the server I will have 2 folders in on the Province folder I will have 9 folders which each folder represent the province then inside each 9 folders I will have 60 empty text files. The client will only send the numeric number 1 to the appropriate file on the server per line but the same problem arise is that the file can be modified by thousands of systems at the same time so which I'm a bit worried that some programs data may not be saved because the file is being modified by another program but I think this can also be doable just like in database. So now how I can connect these two and remember the clients will only send in 1 to the appropriate file to be saved per line. I don't want to keep any data on the clients computer because we don't want any human interference with the system files, we want to get the accurate numbers with not even one data failed to be sent or saved the files will have millions of lines at the end.

Forgot to mention that I will also have another text file named barcode.txt on the server when the user scans his/her barcode the system will connect to the server and check on the text file if this barcode do exist or not if not then it will be registered and the system will be enabled else if the system finds that the barcode exist it will deny the access and beep so that controllers will be aware of that person trying to miss-use the system.

Access is more suitable for small, single-user databases. For something of your scale, "thousands of client programs that will modify the database simultaneously" you need something more industrial strength. You need a full blown SQL server. You may be able to get away with the free version of MS SQL if your data is under a maximum size (at one time the limit was 4 gig). If larger then you might consider MySQL. I have experience trying to maintain an multi-user application based on Access (written by someone else). Even though it was never used by more than 5 users at a time I still ended up having to rebuild the database weekly because it kept breaking. Over a ten year period I only ever had to rebuild a SQL database once and that was because of a server failure.

Ok thanks. So I'm not sure if this "dev.mysql.com/doc/refman/5.7/en/introduction.html" MYSQL will be suitable for this. But I can feel this will be way complicated.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.