Justifications for using MSSQL over MySQL from cost perspective [closed] - asp.net

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm in the process of switching from certain open-source technologies to ASP.net for building web applications (including some complex CRM and ERP tools as well as simple blog-like apps.) So far I've used MSSQL in the learning process but the more time I spend looking into infrastructure costs, the less impressed I am with MSSQL. (Windows Server / IIS on the other hand is relatively inexpensive and not a concern.) I've used MySQL in the past and feel comfortable with it.
Please provide me examples of situations, if any, where given the choice, MSSQL would justify its costs compared to MySQL. I realize there are reasons to use MSSQL such as the quality of integration out-of-the-box with Visual Studio, etc -- however I'm more interested in this from the stand-point of the raw costs of running servers. For example, if you can tell me something like "the license cost of MSSQL with one physical server will be lower than the hardware costs of running multiple servers with MySQL while providing the same performance in situation X, Y, and Z," I'd love to hear it. Perhaps there are reasons why it's cheaper to scale MSSQL or perhaps it is just a lot more efficient. People make the decision to choose MSSQL every day and I'd like to hear the reasons that pertain to cost.
I also welcome any answers that prove the costs to be negligible.

if your MySQL will scale much more than the limitations of Express, than perhaps you shouldn't use MySQL at all.
SQL Server is licensed Per CAL or Per CPU Socket(most expensive). There are also cheaper versions with fewer features but still fully functional, namely Web edition and Workgroup edition.
If money is your sole concern here, I encourage you to check the edition compare and see the one that best satisfy your needs then check the licensing info

Why not just use Sql Express? There are few limits (1gb ram, 4gb db) but besides that you can get the management tools for it, etc.
Voila - no cost : )
http://en.wikipedia.org/wiki/SQL_Server_Express

Related

Best tool: Distributed load test for asp.net applications [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
We want a high performance testing tool for a distributed scenario
We want to collect data from clients and from server (memory usage, cpu usage, response time, .net calls etc).
Most of our applications are using .Net 4.0 or Classic Asp.
We have 4 servers. We want 1 controller and three agents working together for testing, collecting data.
What's the best tool for this scenario?
ps: We've tried Visual studio 2012 ultimate and it seems promising. I don't know other tools that fits the scenario.
Give Load Tester a try: http://www.webperformance.com/load-testing/ (disclaimer: I work there). It has a monitoring agent that will run on your Windows servers to collect the metrics you mentioned and a lot more. It also collects client-side metrics such as page load time. The LITE version is free and can run simple tests with unlimited users.
Take a look at Rational Performance Tester. I was about to purchase a license for one of our projects but didn't push through for reasons not related to the software. Looked promising back then.
I would split things up to keep it simple.
First I would check what the average requests per seconds is when using your servers to generate load. For that there is a small tool included in Apache Http Server called ab.exe. It's easy to setup to generate requests.
If you think that you get acceptable response times all is well.
If not, use something like Jetbrains DotTrace (in your app) to collect data when generating load from one server.

What's differences between sql server reporting services and other report tools [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm a self taught student and I created some web application in ASP.NET using Entity Framework and SQL Server.
For reporting, I dynamically create database queries using Entity SQL. After pulling the result I show the result in HTML or some other format like Excel.
I would like to do some professional reporting, but I don't know which direction I should go.
I've heard about SQL Server reporting services, Crystal Report, Stimul Report and Fast report. Do they all do the same thing? I'm wondering which tools or technologies should I study and use?
Do they all do the same thing?
For 80%+ of use cases, yes. But each product has its own niche and its own unique features.
SSRS is the clear choice in a pure MS development environment. It benefits from the vast MS help and support infrastructure, and has numerous built-in integrations with other MS products like Excel and SharePoint
Crystal Reports has momentum and history on its side. It has no less bugs than the others, but has numerous mature usergroups, forums, etc. that leave only a very slim chance that you will have any issues that others haven't already had, fixed, and posted answers to. Additionally, many companies have stuck with it as their standard tools, since prior to SSRS, no products really threatened CRs position as market share leader. (Not that SSRS immediately threatened CR, but because SSRS was given away free as part of SQL Server, it developed a large following on the principle that SSRS is typically "good enough" and doesn't require additional licensing after you've paid for SQL Server.
I'm not familiar with Fast Report, and my understanding of Stimulsoft Reporting is that it works well in environments that employ numerous types of data sources.
I'm wondering which tools or technologies should I study and use?
Assuming you want a job working with these tools, the answer lies in the market you want a job in. If your job market is hiring primarily for a particular reporting system, it is a no brainer: Study the one that you local companies are mostly hiring for. (Sounds obvious, but I constantly see young techies studying a particular product for academic reasons, and then get frustrated that local companies aren't interested in the product they've devoted their learning energy towards.)
If your job market is neutral (or you don't care where you get a job), I'd recommend sticking with the big players (SSRS, Crystal Reports are the players in the list you mentioned) because job are more plentiful there.
From there, pick the philosophy you are most comfortable with: (Beware, generalizations ahead)
SSRS works best in MS-centric environments and is used more by upstart companies, due to its price. If you like new development, smaller companies and startups, this is your choice. (My opinion only: SSRS is a growing product that is backed solidly by Microsoft. It hasn't even reached its "golden age" yet, and will continue getting better in future SQL versions.)
Crystal Reports is seen much more in larger corporate environments with numerous databases, and long lists of legacy systems. If you like larger corporate environments, and maintaining established systems, this is your choice. (My opinion only: Crystal reports had its golden age in the '90s, and is gradually declining in market significance. It'll still be around for decades as a big player, but I don't see them ever regaining their '90s prominence.)
My suggestion tends to be for Crystal Reports when talking about "customer facing" reports: Invoices, Statements, Confirmations, etc
SSRS is my favoured solution for all tabular, number-centric reporting.
The only experience I have is with Crystal Reports. They seem to be nice to use once you get used to the quirks. Also if you want to print labels and such they are fairly robust. Exporting to Excel is nice but not as amazing as SSRS. I would use CR for a clientele that is somewhat savvy with computers. They can modify the reports themselves which is nice.

SQL Server vs Access Database for Web: Compelling Arguments [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I know you're think "hands down SQL Server" (as am I) but I'm finding myself in delicate situation that requires I "sell" this to my new supervisor (not a developer).
What I'm looking for are compelling arguments for non technical people and some that are "slightly" technical but don't really understand the differences. I'm having a hard time convincing my current shop that this is not only extremely inefficient but dangerous in so many ways. I won't be able to give them a dissertation however to convince them. What arguments can I give them "quickly" that will make them understand how serious this could be?
Thanks!
It depends really. I'd suggest sql express if money is the problem though.
Also there is this:
http://support.microsoft.com/kb/303528
Microsoft Jet is not intended for use with high-stress server
applications, high-concurrency server applications, or 24 hours a day,
seven days a week server applications. This includes server
applications, such as Web applications, commerce applications,
transactional applications, and messaging server applications. For
these types of applications, the best solution is to switch to a true
client/server-based database system, such as Microsoft Data Engine
(MSDE) or Microsoft SQL Server. When you use Microsoft Jet in
high-stress applications such as Microsoft Internet Information Server
(IIS), you may experience any one of the following problems: Database
corruption Stability issues, such as IIS crashing or locking up Sudden
failure or persistent failure of the driver to connect to a valid
database that requires re-starting the IIS service
You don't provide any info to really answer this. what is your application all about? what load will it need to handle? how much data will it retain? what are the backup and availability requirements? etc...
if you are building a little web page for internal use only, Access may get you there. for anything else, or for future expansion, for better tool integration, SQL Server is the right tool. Just download the free express version and build you application. the available features and compatibility with the purchased version are worth it alone. When you outgrow access you'll have to throw away everything and start again, with sql server express you can migrate without changing anything.

Are there any guides on configuring ASP.NET Trust levels on IIS [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am looking for either a best practice, supported, guide from Microsoft or a bloggers/developers guide of the same. Or both.
I am setting up some servers for hosting and I want to configure them with just enough permissions. I have done this before where I modified the Medium trust and gave it database permissions etc but I only briefed over it.
I want to setup solid machines with the respective, common, permissions that people use. Is there maybe a resource that explains in detail what each trust level has by default? That way I could compare and go from there.
To start the security, I have made a rule on my machines that I only create dedicated application pools per site/user. I know Microsoft say that each website is virtually seperate, even in the shared application pool space, but I just don't trust it.
I also know I shouldn't run in Full Trust as I am opening up my server to all kinds of attacks.
I have a bit of knowledge on this but not enough so hopefully you lot can help me. I'm not wanting to be spoon fed what to do, I have no problem figuring it out, I just can't find the info to start with.
I appreciate your help.
Anthony
I'm running:
Windows 2008 RC2 64 bit with IIS7.5 and a combination of 2.0/3.5 and 4.0 application pools.
The strict best practice is "don't let anything do anything to anything" but that is counterproductive in general -- if you aren't taking HTTP requests, you don't have a working HTTP application server.
That said, your question is very general and very nebulous. The first key question is "what sort of hosting scenario is this?" For example, full trust isn't necessarily a bad thing in a dedicated scenario, or even a shared server between "friendly" apps that should trust each other. But it is bad in a hotel server situation where you've got random guests sharing space.
The second question is what sorts of apps are you hosting? You've got completely different frontages depending on what you are doing -- spammers don't try as hard as thieves. Spies try even harder.

Distributed Cache/Session where should I turn? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am currently looking at a distributed cache solution.
If money was not an issue, which would you recommend?
www.scaleoutsoftware.com
ncache
memcacheddotnet
MS Velocity
Out of your selection I've only ever attempted to use memcached, and even then it wasn't the C#/.NET libraries.
However memcached technology is fairly well proven, just look at the sites that use it:
...The system is used by several very large, well-known sites including YouTube, LiveJournal, Slashdot, Wikipedia, SourceForge, ShowClix, GameFAQs, Facebook, Digg, Twitter, Fotolog, BoardGameGeek, NYTimes.com, deviantART, Jamendo, Kayak, VxV, ThePirateBay and Netlog.
I don't really see a reason to look at the other solution's.
Good Luck,
Brian G.
One thing that people typically forget when evaluating solutions is dedicated support.
If you go with memcached then you'll get none, because you're using completely open source software that is not backed by any vendor. Yes, the core platform is well tested by virtue of age, but the C# client libraries are probably much less so. And yes, you'll probably get some help on forums and the like, but there is no guarantee responses will be fast, and no guarantee you'll get any responses at all.
I don't know what the support for NCache or the ScaleOut cache is like, but it's something that's worth finding out before choosing them. I've dealt with many companies for support over the last few years and the support is often outsourced to people who don't even work at the company (with no chance of getting to the people who do) and this means no chance of getting quality of timely support. On the other hand I've also dealt with companies who'll escalate serious issues to the right people, fix important issues very fast, and ship you a personal patch.
One of those companies is Microsoft, which is one of the reasons that we use their software as our platform. If you have a production issue, then you can rely on their support. So my inclination would be to go with Velocity largely on this basis.
Possible the most important thing though, whichever cache you choose, is to abstract it behind your own interface (e.g. ICache) which will allow you to evaluate a number of them without holding up the rest of the development process. This means that even if your initial decision turns out not to work for you, you can switch it without breaking much of the application.
(Note: I'm assuming here that all caches have sufficient features to support what you need from them, and that all caches have sufficient and broadly similar performance. This may not be a valid assumption, in which case you'll need to provide more detail in your question as to why it isn't).
You could also add Oracle Coherence to your list. It has both .NET and Java APIs.
From microsoft : App fabric
Commerical : NCache
Open source : RIAK
We tried a couple in the end we use the SQL session provider for asp.net/mvc yes there is the overhead of the connection to the DB but our DB server is very fast and the web farm has loads of capacity so not an issue.
Very interested in RIAK has .net client and used by Yahoo - can be scaled to many manu server

Resources