I'm stuck while creating a programming decision,
I'm a .Internet developer, I'm presently building a credit card applicatoin for my client that receives data from a 3rd party application, it needs to then perform procedures around the values and send it to some webservice/servlet which in turn shows data to some web page, The issue here would be that the data being delivered to the consumer(voting options, count etc) around the web page should be up-to-date every 2 seconds in the latest,
I've plenty of confusion making some choices,
1) The information provider (3rd party application) suggests Java but does not enforce it, as i am proficient at .Internet(C#), can you recommend building the application in C# or Java. when it comes to optimisation and speed, which may be superior? exactly what do everyone recommend?
2) aftr receiving data from 3rd party, me and my friend are getting mixed ideas, I'd prefer that the moment information is received, we ought to write it to some db (being that they are merely a couple of fixed fields being sent every time), after which obtain the webservice/servlet to retrieve the information and then suggest information onto it, my justification is the fact that we'd in addition have a track and historic data and user thought pattern when we save it, while m,y friend states that saving it to db will delay the applying substantially which we ought to directly poll data in the application, younger crowd reckons the db will end up massive very quickly and slow, we attempted carrying this out but it's leading to a 8 second delay (for whatever reason tomcat is locating data only after every 7 attempts if it is a webapp and saving it every second if it's a java console application., ) my ideas are when we save to db and retrieve after that, we are able to obtain the console application to create to application each second after which retrieve data while using webservice every second approximately based on what we should want.
Within this scenerio, exactly what do everyone reckon is a great approach, must we save to db or otherwise save to db?
3) Say even when we did save to db, can you reckon using berkeley or sqlserver really make a difference? i'd prefer using sqlserver for .internet an berkeley for java
I understand its quite a large question and could be pretty boring but any help/suggestions is going to be much appreciated, help us have more clearness with one of these issues stack overflow.
You realize C#, then utilize it. If not one other constraints of technologies, use that which you know best.
Don't think about performance until you've attempted both situations. Perform a evidence of concept, the right path as well as your coleague's way, begin to see the performance variations and if the historic data advantace worths the performance difference.
Use SQL Server for C#. You may want to consider certification into account (you realize better the context from the project anyway).
If you are confident with .Internet, why can you spend some time with Java? My concerns against Java are irrelevant, but regardless you will be investing time learning Java, most likely falling in to the same issues that any beginning developer falls into with any tool or technology.
I only say, if you are confident with .Internet, get it done insInternet. The finish result will not be considered a lot different, but you will get there faster.
Then, making the information and taking advantage of the database as a kind of "cache" differs from keeping a history. You are able to return the outcomes in the third-party application but still keep history inside a database. Whether it's not fast enough, queue it.
Make use of the language you realize best as lengthy because it is Suitable for the consumer.
Request the consumer when the data needs to be endured, whether it does not don' persist it. If you need to persist it it can be done asynchronously without any effect on the internet processing.
I'm not sure the variations, however the answer is dependent on what you would like related to the persistent data (how lengthy would you like to ensure that it stays, do you want backup copies, are you prepared to purchase an answer)... Therefore if guess what happens you need to achieve you are able to choose the best tool, and perhaps it will not be considered a database...