Contact Contegix: 1.877.436.6834

Archive for the ‘Uncategorized’ Category

Global Tech Company Contegix to Sponsor Open Source Language Project Clojure

SAINT LOUIS, Missouri (July, 2010) – Contegix, a privately held technology firm specializing in Internet infrastructure and hosting services, announced their agreement to provide sponsorship to Clojure development language project.

“At Contegix, we have a history that runs deep in the open source community, and look for ways to give back in any way that we can to help support efforts which push this technology forward. Clojure represents the next wave of languages that are designed to take advantage of the features of today’s computers, especially multi-core processors.  We saw this as an opportunity to provide our expertise in managed service to allow the Clojure community to focus on development rather than infrastructure management,” said Matthew Porter, CEO and Co-Founder of Contegix.

Clojure is a dynamic programming language that targets the Java™ Virtual Machine (and the CLR). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language – it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime.

“The Clojure development team is delighted to be sponsored by Contegix. Contegix has a long history of supporting quality open source projects. We now have build.clojure.org and dev.clojure.org on Contegix managed cloud hosting, and will be working in the coming months to make access to Clojure resources more simple and reliable than ever before. The entire Clojure community thanks Contegix for their support,” remarked Stu Halloway, a Clojure Committer

ABOUT CONTEGIX

Contegix holds expertise in high security managed hosting, cloud computing, applications management, colocation and Internet infrastructure intelligence. Their award-winning service is delivered by a staff of Tier-3 engineers from their global headquarters in St. Louis, MO. To find out more, please visit www.contegix.com.

ABOUT CLOJURE

Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs. To learn more about Clojure please visit www. clojure.org

Posted by anne.ellegood 3 Comments

Categories: Uncategorized

Support: It’s Not Technical All the Time…

When most people hear the words ‘support’ and ‘Contegix’ they think of our stellar technical support team of engineers. But that’s not the only support that Contegix does. In fact, we support more than just our clients and partners. We also support several worthy organizations that strive to push innovation and education for the masses in our industry forward.

So far this year, we’ve had the distinct honor of sponsoring the GR8 (Groovy/Grails/Griffon) in the US conference this past April in Minneapolis, Minnesota. This is the FIRST conference of its kind being held in the US and it was a smashing success.

In addition, this year we’ve also sponsored the NFJS (No Fluff Just Stuff) technical conference as it makes its way across the US. This coming October, we’ll be a key sponsor of the Strange Loop technical conference being held in St. Louis, Missouri.

It doesn’t stop there. We recently heard about a terrific organization based on the East Coast called Jasig, which is a consortium of educational institutions and commercial affiliates who work together enabling the funding of open source software projects for higher education.

If you are part of a company that can assist any of these great organizations, we are sure they would appreciate the help. And all of us pitching in and supporting them together will only enable those who work in open source to benefit and move our technology forward.

Posted by anne.ellegood No Comments

Categories: Uncategorized

Searching For Contegians

Being the growing company that we are here at Contegix we consistently find ourselves searching for new talent to fill roles throughout our company.  An easy task, right?  Not necessarily.  Particularly if, like us, you really want to find those individuals who will not only excel in your environment, but who also understand the dynamics of what your organization is about and is willing to uphold those beliefs.  We’re a technical company, of course, but we do not let technical proficiency be the sole decision factor when making hiring decisions.  In fact, here at Contegix things such as culture fit and an understanding of the customer dynamic are equally important to us.

What does it mean to recruit new Contegians?  What exactly happens behind the scenes from the point of having an opening or two and actually hiring someone?  Well, it turns out, there is quite a bit of activity in the middle of the hiring equation.

As a first step, the open positions must be translated to something meaningful to the world at large and to every candidate.  That is not always as easy a task as one might think.  We know what we want and what we are looking for but sometimes it is rather difficult to express that to people outside the world of Contegix.  We use a variety of methods for sourcing candidates including recruiting firms, paid advertisements, free advertisements, career fairs, employee referrals, employee networks, customer referrals, and the like.  Some of these methods allow us to locate candidates who most closely resemble what we look for, and other methods fall short.  Regardless of the method for sourcing, they all have their pros and their cons.

We recently posted an internal blog post with a few statistics regarding the amount of effort I have personally been exerting during a current recruitment effort we have under way.  Note that the statistics listed below cover a two-week time period.

Number of resumes received: 67

Number of resumes reviewed: 67

Average length of candidate phone interview: 30 minutes

Average length of in person candidate interview: 2.5 to 3 hours

Number of regular office hours interviews (phone & in person): 16

Number of in person interviews conducted off site (in a single day): 5

Number of employment offers made (as of this post): 1

Number of employment offers accepted (as of this post): 1

We typically do a combination of phone and in person interviews with all candidates regardless of the position for which they are interviewing.  Each candidate typically does two of each type of interview before an employment offer is made.  Candidates also interview with multiple individuals within Contegix, and we try to have candidates interview with at least one individual from outside the department they will be working in if possible.

As another perspective, I spent 36 hours in a one week period working on recruitment efforts.  That includes placing ads, working with recruiters, coordinating interviews, conducting phone interviews, conducting in person interviews, and providing follow-up feedback to all active candidates.  A lot of hours?  We don’t think so.  We take recruiting seriously and feel like we get a return on the investment we put into it.

- Jason Smith

Director of Client Services

Posted by jason.smith No Comments

Categories: Uncategorized

Wellness Clinic vs Triage Center – Why Exceptional Customer Service Matters…

It would seem that in this day and age, customer service has gone by the wayside for the mere sake of cost control .  The impact to the customer that needs the service is rarely a concern.

Fortunately, some companies and people still believe that great customer service is still the best way to run a business. In short: Take care of people. Because they can make or break you.

Many times we are asked as an organization just what stands us apart from our competitors. The answer has always been the same. We prefer to run a complete health wellness clinic versus a triage center. By the time a customer calls to complain about a service issue, they are already upset and frustrated. Bottom line, they just want their stuff to work and run right – and they want to be taken care of.

As a company, we take great care to make sure that we are always monitoring our clients’ managed infrastructure – making sure that a hiccup doesn’t become a full out case of indigestion and in nearly all instances, that those hiccups don’t even happen in the first place. But should they occur (which in the IT industry, they always do), our team moves into action to respond in 5 minutes or less, and work tirelessly until the client is happy. We take care of customers by taking care of their infrastructures and their concerns/problems/needs. We don’t give false promises that we deliver the “best service” – we just do because as consumers ourselves, we understand the frustrations of poor and incomplete service. And frankly, who really likes this type of service anyways? You really do get what you pay for.

Continual monitoring and delivering exactly what our brand promises (and standing by it) has quickly established Contegix as one of the best service providers in our field. We employ some of the best and brightest engineers in the industry who treat our clients not just as clients, but as friends of the virtual infrastructure hosting and managed support industry. And after all, you wouldn’t let a friend down or leave them hanging when they need help.  Would you?

Our attitude towards customer service is the reason we were fortunate enough to grow in 2009.  The reason is this: We run a wellness clinic rather than a triage clinic for our amazing customers.  A sincere thank you for all those that made it possible.

Here’s to the health of your organization.

Cheers,
Anne @ Contegix

Posted by anne.ellegood No Comments

Tags: , , ,

Categories: Uncategorized

Contegix Obtains EU Safe Harbor Compliance Certification

Contegix is proud to announce that effective September 29th, 2009, Contegix has been certified as compliant with the U.S. Department of Commerce’s U.S.-European (EU) Safe Harbor Framework.  Contegix is committed to protecting our customers’ privacy, and to continually demonstrating that security, privacy, and data protection are important core values for our organization.  By adhering to the Safe Harbor Framework Contegix is not only able to provide services to European businesses which require compliance, but is able to provide peace of mind to non-EU organizations who are concerned about privacy and data protection.

To help guarantee adherence to Safe Harbor principals, Contegix utilizes the services of TRUSTe, an industry leader in privacy services.  TRUSTe’s EU Safe Harbor certification program is one of the most trusted and rigorous in the business, and they will monitor Contegix’s privacy practices continually to ensure full compliance.

Contegix’s will continue to show dedication to security, privacy, and data protection by maintaining annual reviews and renewals of our Safe Harbor Framework compliance and SAS 70 Type II audit, and Contegix will always make it a mission to protect the private information of our customers.

TRUSTe_EU_Seal

Posted by jim.drewes No Comments

Tags: , ,

Categories: Uncategorized

Introducing Zeus – Rebooting Cloud Computing

Cloud computing, as we currently know it, is broken.  Data isn’t always persistent,  instances are unstable, pricing is confusing, and professional management is nowhere to be found.  Although we will tip our hats to bringing cloud computing to the masses, the cloud model needs a reboot.  It often seems like each month another company releases a cloud computing offering, but nobody ever takes the next step in maturing the delivery mechanisms, stability, or business model.  It is for these reasons that Contegix is proud to introduce Zeus, a managed cloud computing platform aimed at providing consumers with the power and flexibility of virtual systems coupled with the management support that only fully-managed data centers can provide.

zeus screenshot

Zeus is a unique cloud service that will provide persistent storage, reliable uptime, and managed support.  Based on VMWare ESX, fronted by high-end network gear and physical level 4-7 load balancers, and backed by true SAN storage and advanced monitoring, customers of the Zeus platform will be able to build powerful architectures that scale reliably.  Furthermore, with a 100% network and 100% power uptime SLA, security and compliance audits available for viewing, and the option of including Contegix’s world-class management support, cloud computing is now ready for the enterprise.

Another feature of Zeus that we’re excited about is the use of templates.  Zeus will come with virtual machine templates for several different common configurations.  If you want an Apache box, spin one up.  If you want a MySQL box, spin one up.  And it all happens in about 5 minutes.  If our templates aren’t meeting your needs, or you need to replicate the same instance over and over, simply upload your own template.  Better yet, convert your physical boxes with P2V and upload your enterprise.

Stay tuned for more information on Zeus.  Private beta is targeted for availability at the end of June, with full production availability at the end of July.

Posted by jim.drewes 5 Comments

Categories: Uncategorized

Introducing NR Notify

NR Notify is a simple ruby based notification tool for New Relic RPM. With NR Notify you can add email and SMS notifications to your Ruby on Rails and Merb applications. By using the the New Relic API, NR Notify provides email and SMS notifications based off of your “Traffic Light” settings within New Relic.

Features:

  • Multiple Email Support
  • Multiple SMS Support
  • Adjustable Alert Escalations Policies
  • Supports Multiple Rails Applications
  • YAML Configuration
  • Adjustable Update Interval

New Relic Notify is easy to setup. All you need to do is adjust the config.yml to your liking and run the included Ruby script. However it is recommended that NR Notify is ran under a service manager such as daemontools or runit. This also requires a SMTP server to deliver the emails.

For more details on NR Notify please visit our project home:
http://code.contegix.com/wiki/display/NRN

For the project source please visit:
http://code.contegix.com/svn/NRN/trunk

Posted by John Williams No Comments

Tags: , , ,

Categories: News Uncategorized

Mod Proxy AJP Versus Mod JK – Round 1

Prior to the existence of Mod Proxy AJP being built into Apache HTTP we used Mod JK for any Tomcat based instance we hosted here. All of our Resin containers would use Mod Caucho, and all the Tomcat containers used Mod JK, and all was well in the world. We never had any significant complaints with Mod JK (Caucho’s another story for another day), other than it being a bit of a pain to setup, and it needing to be built from source. This created a situation where maintaining Mod JK was problematic, because it wouldn’t automatically be updated in our routine RHEL updates forcing us to manually rebuild for critical security updates. Then you added in the fact that the configuration files totalled in at three, with a mod_jk.conf, a worker.properties file, and the actually JkMount itself in the virtual host configuration, and you had yourself a maintenance headache. Not too mention the slightest of typos and a simple Apache reload turns into Apache going belly up like a poisoned whale.



Needless to say I suppose, when Proxy AJP came into our lives we as engineers were smitten. We were all quite familiar with ProxyPass, and simply swapping “http://” with “ajp://” to proxy to Tomcat containers seemed like the best solution we had ever seen. We were practically partying over the idea that we could finally ditch JK like a bad habit, and ride off into the sunset with our new ProxyPassing beast of a friend. The only downside is it required Apache 2.2, so our RHEL 5 boxes were all set, but the RHEL 4 boxes left us in the hands of old faithful, Mod JK. The ultimate question continued to linger though: Which would hold it’s own under high stress more effectively? In terms of average browsing, I don’t think you’d ever notice a difference, even after the tests I’ve done. The difference, to the human eye at least, is negligible. Nevertheless, I constructed a few test to put both through their paces.



Test Environment:

  • Apache 2.2
  • Tomcat 5.5.20
  • Java 1.6 64 bit
  • PostgreSQL 8.3.5 (tweaked for performance)
  • Confluence 2.10.1



Test Tools:



To get the ball rolling I started with Pylot. This was a quick and free way to start some preliminary testing. My initial tests fired up a constant flow of 200 (virtual) users at the instance for 10 minutes to see what would happen. To my initial surprise, Proxy AJP was a pretty clear winner to start things off. It was able to serve 1-2 more requests per second, while serving an average response time of roughly 1 second better than JK. Surely that couldn’t be right, it couldn’t possibly be that easy right? Right, not that easy. With some adjustments to Mod JK, like giving it a connection pool, I was able to get the results from my tests with Pylot to average out to be roughly the same. Under constant pounding from 200 agents, both were able to average an average response time of approximately 8.3 seconds, while serving roughly 23 requests per second. I was pretty pleased with my test environment at this point, and ready to kick it up a notch.



We got in touch with Patrick from BrowserMob, which is a site that offers real load testing with real browsers. I was hoping that with his service, I’d be able to find distinguishing differences between the two AJP connectors for Apache. After crafting myself a script using Selenium, and testing it ad nausem locally, I was prepared for my first test against Proxy AJP. I ran a 15 minutes ramp up to 100 users, and then put a constant load of 100 users across 45 minutes on the new kid in town. Surprisingly, the throughput looked pretty incredible:



 



If you click the image you can get a better view of the results, and see that we topped out around 140MB per minute being served. You’ll also see that the ebb and flow of data being pushed out was incredibly spiky. There are numerous jumps up and down the graph as more and less intense pages are hit throughout the tests. At first this seemed a bit scary, because I somewhat expected a smoother line across the board. I left all configurations the same though, and proceeded to test Mod JK, where I received the following throughput graph:





In a side by side comparison (or for better results lay the images over the top), Mod JK suffers from similar, but less severe spikes. It never quite reaches the highs that Proxy was able to reach, and never dips to the lows the Proxy had succumbed to. However, there’s something else at play here that caused this to happen. Mod JK caused Apache to reach MaxClients, and hold fairly steady there. There were only 100 users, and there were 256 MaxClients available in Apache, so numerically speaking, Mod JK should have been able to handle this without cracking under the pressure.



However, since it was at max connections, it didn’t have the downward spikes that Proxy did, because it was still trying to serve past requests. At the end of the day, we saw roughly 630 timeouts from JK in the tests, with the tests timing out at 30 seconds. Yes, I could have cranked up the timeouts to allow every step to completely finish, but this is real world testing. When was the last time you allowed a page more than 30 seconds to load? Proxy AJP on the other hand only sufferred from 450 such timeouts, showing me that it was able to pump out requests, and break off connections faster than Mod JK. The way I currently see it, JK failed to serve 200 people. That’s 200 people that think my site’s down, or heaven forbid, a Google bot that is prepping to denote me as a downed site. That’s 200 requests I’m not able to serve advertisements on, and thus not able to make money off of. Might not seem like much, but it is a big deal to some degree.



Now it would be interesting to crank up the MaxClients, and see what happens in that scenario. However, I needed to keep parity between the tests, so they were both performed within the exact same scenarios. We can always do more tweaking, and make more adjustments though. However, at the end of the day, Proxy has a lot going for it. It’s a built in module in 2.2, configuration is insanely easy, balancing is a cinch, it works with the balancer manager of mod_proxy_balancer, it receives automatic security fixes via RHEL updates, and so far, it out performs JK. We plan on doing more tests with altered configuration in the future, so look forward to future rounds. Perhaps JK can make up some ground in Round 2? Perhaps you’ll also get some insight on methods to tweak your Confluence installation to squeeze a bit more performance out of it as well. Many updates to come…


Posted by mark.rogers 3 Comments

Tags: , , ,

Categories: Uncategorized