Create and deliver personalized experiences across digital properties at scale
Build engaging websites with intuitive web content management
Leverage a complete UI toolbox for web, mobile and desktop development
Build, protect and deploy apps across any platform and mobile device
Build mobile apps for iOS, Android and Windows Phone
Rapidly develop, manage and deploy business apps, delivered as SaaS in the cloud
Automate UI, load and performance testing for web, desktop and mobile
Optimize data integration with high-performance connectivity
Automate decision processes with a no-code business rules engine
Globally scale websites with innovative content management and infrastructure approaches
Content-focused web and mobile solution for empowering marketers
Faster, tailored mobile experiences for any device and data source
UX and app modernization to powerfully navigate today's digital landscape
Fuel agility with ever-ready applications, built in the cloud
Increasing the throughput on your machine is as simple as switching out the data connectivity. Machine consolidation saves resources and increases performance.
Why do we focus so much on performance? Because performance gives you, our customers and partners, options. You want to be able to make choices affecting your data, work load and bottom line based on the performance of the software that you’re using.
One of those choices is to increase throughput. So in this example, say you had three machines where you were running just under 16,000 rows per second for your application. You could switch out the connectivity, and then get a 300% throughput increase.
Figure 1 Using the same virtual machine resources, we get 45,000 rows vs. 15,000 rows. This also reduces the number of virtual machines per application by a factor of 3x.
We’ve also had some customers focused on machine consolidation. The throughput that they had was fine, but they were running out of space, or they were generating too much heat for their AC system. Those are the environments where you can go in, switch out, move to a smaller number of machines, and get those cost savings.
One customer we spoke with was really interested in it, and it sparked an experiment. We were told, “Well, I want to do some machine consolidation because I run my lab out in Amazon.” So we ran more tests. We said, “Let’s go ahead and set up on the Amazon systems. We’ll set up some different client machines, some different server machines, run some tests and see what we can get out of this.”
So we have our extra-large machine, which has four CPUs, a really fast network, and tons of memory. Then we have other machines with varying amounts of memory—large, moderate, and small. We also varied the network, so we could introduce a little bit of latency.
The first machine we ran some pretty good results. We were getting about 2X throughput on this machine. Again on the bottom, you’re getting 10 to 70 threads.
So we decided to run it on a larger machine. Again, you start to notice the competition getting resource-bounded about 20 threads and starting to decrease in its output, and we started getting resource-bound a little over 25,000 threads, and starting to decrease out to 70. But we still knew we had room to run, right? We wanted to see if we would scale, and we wanted to remove the bottlenecks—in effect, blow the competition out of the water.
We ran it on the extra-large machine and got some really interesting results. You’ll notice on top, the blue line continues to scale, and the competition is scaling as well. However, the angle of that line is much steeper, indicating that we’re getting much faster much quicker.
If you had been running 20 servers, in this instance you would only need eight servers, which would save you up to 150,000 in Amazon dollars. On the flip side, if you were running 100 servers up in Amazon, which is a very large deployment, you could get by with 39 servers, saving you a little over half a million dollars.
This is a practical, real-world example of how we test our drivers after we architect them for performance to try to get a thorough understanding of the choices that it gives to each one of our customers.
The drivers my team and I build here at Progress® DataDirect® are designed to be the fastest in the industry, and we stand behind that claim with award winning technical support. When you find performance degradation issues in our software, we treat them like any defects because we understand how important speed is to your business. You can pick up a free trial today and try it out for yourself, or watch a replay of our Progress webinar, “Industry Insight: Optimizing Your Data for Better Performance.”
Mike is a proven leader with over 20 years of experience in developing commercial software for the industry leader in standards-based data access software. He has extensive experience in all aspects of commercial software development including requirements analysis, developing functional requirements, developing and mentoring individuals, staffing, budgeting, product development, quality assurance, training and customer communication. Mike has progressed in his career in large part from his strong work ethic and a “do whatever it takes” attitude.
Copyright © 2017, Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks or appropriate markings.