advertise
Thursday
Aug122010

Designing Web Applications for Scalability

I can’t even count the number of times that I’ve heard this phrase: “don’t worry about scaling your web application, worry about visitor (or customer) acquisition.” My response to this is always that you don’t need to choose one or the other, you can do both! In this post, I’m going to go over some of the strategies I’ve used to architect web applications for scalability, right from the start of the design process, in such a way that I’m prepared to scale when I need to, but not forced into doing so before its necessary. Easing the transition from small scale to large scale can be made much easier by choosing the right technologies and implementing the right coding patterns up front.

You can read the full store here.

Thursday
Aug122010

Strategy: Terminate SSL Connections in Hardware and Reduce Server Count by 40%

This is an interesting tidbit from near the end of the Packet Pushers podcast Show 15 – Saving the Web With Dinky Putt Putt Firewalls. The conversation was about how SSL connections need to terminate before they can be processed by a WAF (Web Application Firewall), which inspects HTTP for security problems like SQL injection and cross-site scripting exploits. Much was made that if programmers did their job better these appliances wouldn't be necessary, but I digress.

To terminate SSL most shops run SSL connections into Intel based Linux boxes running Apache. This setup is convenient for developers, but it's not optimized for SSL, so it's slow and costly. Much of the capacity of these servers are unnecessarily consumed processing SSL.

Click to read more ...

Thursday
Aug122010

Think of Latency as a Pseudo-permanent Network Partition

The title of this post is a quote from Ilya Grigorik's post Weak Consistency and CAP Implications. Besides the article being excellent, I thought this idea had something to add to the great NoSQL versus RDBMS debate, where Mike Stonebraker makes the argument that network partitions are rare so designing eventually consistent systems for such rare occurrence is not worth losing ACID semantics over. Even if network partitions are rare, latency between datacenters is not rare, so the game is still on.

The rare-partition argument seems to flow from a centralized-distributed view of systems. Such systems are scale-out in that they grow by adding distributed nodes, but the nodes generally do not cross datacenter boundaries. The assumption is the network is fast enough that distributed operations are roughly homogenous between nodes.

Click to read more ...

Tuesday
Aug102010

Sponsored Post: Okta, EzRez, VoltDB, Digg, Cloud Sigma, Applications Manager, Site24x7

Who's Hiring?

Cool Products and Services

  • Cloud Sigma. Instantly scalable European cloud servers. 
  • ManageEngine Applications Manager.  ManageEngine provides Enterprise IT Management suite of products. 
  • Site24x7Easy, fast and effective web server monitoring, server monitoring and website monitoring service.

Okta is Hiring for Many Positions in Engineering, Marketing, Sales, and Customer Success

We're building a key service for the cloud, in the cloud, by people who know the cloud. Our team is composed of people who were central to building services likes Salesforce.com and SuccessFactors, systems which process millions of transactions in the cloud every day. We know what problems people are having because we experienced them ourselves and saw our customers and colleagues cry for help. We're changing the way people interact with technology, starting with a very fundamental element: identity.

We've got exciting, hard problems to solve and we want you to help us. We learned a lot while creating the largest on-demand enterprise companies, and we're putting that knowledge to good use as we build the next generation of corporate IT. At Okta we understand what Internet-scale innovation requires, which is why we've started fresh, with no legacy code or old code lines to maintain. It's a fast-paced, agile environment – just like the Internet – and we need the best and the brightest to help us change the world.

For more information see Okta's Careers page


VoltDB Field/Community Engineer

VoltDB is attracting more and more users every day. If you have a strong technical background in SQL and Linux, are experienced with production database deployments, and have a passion for customers and community, you could be just the person we are looking for.  Are you excited about the prospect of working with users to develop and deploy VoltDB applications, and about helping users participate in the thriving VoltDB community? If so, read on at their job page.


Get Your High Scalability Fix at Digg 

Interested in working on cutting-edge high-scale infrastructure at Digg? We're making a big investment in scaling and have committed to the NoSQL (Not only SQL) path with Cassandra. We're using other open-source infrastructure to help us scale including Hadoop, RabbitMQ, Zookeeper, Thrift, HDFS and Lucene. We're rewriting Digg from the ground up and we need amazing developers to join our world-class team. If you think you are up for the challenge, or you know someone who might be, take a look at our jobs page for more information.


CloudSigma

  • Instantly Scalable European Cloud Servers. Create virtual servers in the cloud that are fully scalable and adaptive. Control your servers via our web console or API. CloudSigma gives more power and control over your server infrastructure.
  • Keep control, increase scalability. Subscribe for capacity or pay as you go; with CloudSigma we give you the power and control you need.
  • Competitive Innovative Pricing. Discover transparent pricing and a flexible billing model. Purchase what you need when you need it without resource bundling. We let you purchase CPU, RAM, Storage and bandwidth independently. Create your perfect combination that’s right for you. 
  • 14-day Free Trial. Try our cloud computing products free. 

More information at CloudSigma.


ManageEngine Applications Manager

ManageEngine provides Enterprise IT Management suite of products. ManageEngine Applications Manager helps SaaS companies monitor their production applications and helps keep costs low.
There is out-of-the-box support for monitoring application servers, database servers, servers and web servers from a single web console. In addition to support for IBM Applications, Oracle Apps and Microsoft applications, there is deep support for Open Source Applications like JBoss, Memcached, LAMP stack etc.  Pricing starts at $795 for monitoring 25 servers or applications. Learn more about the Application Performance Monitoring tool.


Site24x7

Site24x7.com (from ZOHO) is a Website and Web Application Monitoring service. It helps you ensure your shopping carts and other web transactions work. It also helps you monitor the performance of your websites from a global point of presence. You can Sign Up for a Free Trial. The Professional Edition starts at $1 / Month. Learn more about the Website Monitoring Service.


ezRez Senior Software Engineer

You will be part of a fun, fast-paced and highly collaborative engineering team leveraging agile methodologies to deliver new functionality in incremental iterations. You will get exposed to cutting-edge technologies including an open source stack, dependency injection (DI) frameworks, ORM, XML web services, distributed grid-based caching and the latest UI technologies. We're also currently using best-of-breed extreme programming (XP) techniques including test driven development, pair programming, continuous refactoring and continuous integration.

Requirements

  • Familiarity with agile software development and a desire to champion it among the team.
  • Ability to work independently, multitask and manage time effectively.
  • Experience with test-driven development techniques and/or well-disciplined to write unit tests that assert something useful.
  • Excellent communication skills (verbal, written, wiki, and white-boarding).
  • 5+ years experience with Java (or other OO languages like C++, Smalltalk, Ruby, Python) with deep understanding of object-oriented design.
  • Passion for technology outside the workplace with an interest in the latest open source framework/libraries/tools including Spring, Hibernate, concurrency, memcached/key-value repositories, Freemarker, Tomcat, subversion, maven, and Ruby on Rails.

Nice to Have

  • Familiarity with the travel industry or a high-transaction ecommerce web-site.
  • Experience with a hosted, multi-tenant application environment.
  • We're global, so a familiarity with internationalization and configurable displays is a plus.
  • Experience with OWASP secure coding guidelines.

How to Apply

Please email your resume (as an attachment) to employment@ezrez.com with the subject "Sr. Software Engineer" for immediate consideration. You may also contact our recruiter via Skype at JanetBourland. Please note that at this time we are not considering candidates that will require employer sponsorship to work in the United States. No calls from recruiters/agencies please. ezRez Software is an equal opportunity employer.


ezRez Software Engineer

You will be part of a fun, fast-paced and highly collaborative engineering team leveraging agile
methodologies to deliver new functionality in incremental iterations. You will get exposed to
cutting-edge technologies including an open source stack, dependency injection (DI)
frameworks, ORM, XML web services, distributed grid-based caching and the latest UI
technologies. We're also currently using best-of-breed extreme programming (XP) techniques
including test driven development, pair programming, continuous refactoring and continuous
integration.

Requirements

  • Ability to work independently, multitask and manage time effectively.
  • Some exposure to agile software development or a desire to practice it.
  • 1-3 years experience with Java (or other OO languages like C++, Smalltalk, Ruby, Python) with a firm grasp of object-oriented design
  • Experience with test-driven development techniques and/or well-disciplined to write unit tests that assert something useful.
  • Excellent communication skills (verbal, written, wiki, and white-boarding).
  • Passion for technology outside the workplace with an interest in the latest open source framework/libraries/tools including Spring, Hibernate, concurrency, memcached/key-value repositories, Freemarker, Tomcat, subversion, maven, and Ruby on Rails.

Nice to Have

  • Familiarity with the travel industry or a high-transaction ecommerce web-site.
  • Experience with a hosted, multi-tenant application environment.
  • We're global, so a familiarity with internationalization and configurable displays is a plus.
  • Experience with OWASP secure coding guidelines.

How to Apply

Please email your resume (as an attachment) to employment@ezrez.com with the subject "Software Engineer" for immediate consideration. You may also contact our recruiter via Skype at JanetBourland. Please note that at this time we are not considering candidates that will require employer sponsorship to work in the United States. No calls from recruiters/agencies please. ezRez Software is an equal opportunity employer.


If you are interested in a sponsored post for an event, job, or product, please take a look at the advertising section.

Monday
Aug092010

NoSQL on the Microsoft Platform

NoSQL is a trend that is gaining steam primarily in the world of Open Source. There are numerous NoSQL solutions available for all levels of complexity: from queryable distributed solutions like MongoDB to simpler distributed key-value storage solutions like Cassandra. Then there’s Riak, Tokyo Cabinet, Voldemort, CouchDB, and Redis. However, very few of these packaged NoSQL products are available for the other end of the platform market: Microsoft Windows. I’m going to outline what’s available now and briefly touch on some opportunities that are still available to the daring Microsoft engineer.

You can read the full story here.

Saturday
Aug072010

ArchCamp: Scalable Databases (NoSQL)

 ArchCamp: Scalable Databasess (NoSQL)

The ArchCamp unconference was held this past Friday at HackerDojo in Mountain View, CA.  There was plenty of pizza, beer, and great conversation.  This session started out free-form, but shaped up pretty quickly into a discussion of the popular open source scalable NoSQL databases and the architectural categories in which they belong.

Friday
Aug062010

Hot Scalability Links for Aug 6, 2010

  • Twitter Sees Its 20 Billionth Tweet writes  Marshall Kirkpatrick of ReadWriteWeb.
  • Startups die for not having customers, so STOP thinking about how to scale. Alessandro Orsi says focusing on the architecture and scaling possibilities of your app for millions of users is just plain dumb...concentrate on marketing...concentrate on user experience. Alessandro is perfectly correct, but this isn't the year the 2000 when the default architecture that is easy is also not scalable and when sites were built from scratch one painful user at a time.  Today neither is tue. In the era of social networks, where Facebook has 500 million users, successful applications can and often do spike to millions of users seemingly overnight. And you have to have some architecture. With today's tool-chains you don't have to choose easy and non-scalable. There are other options. Of course, it's all pointless without customers and that is what you need to worry about, but it's a false choice in this era to think that's all you have to worry about.

Click to read more ...

Thursday
Aug052010

Pairing NoSQL and Relational Data Storage: MySQL with MongoDB

I’ve largely steered clear of publicly commenting on the “NoSQL vs. Relational” conflict. Keeping in mind that this argument is more about currently available solutions and the features their developers have chosen to build in, I’d like to dig into this and provide a decidedly neutral viewpoint. In fact, by erring on the side of caution, I’ve inadvertently given myself plenty of time to consider the pros and cons of both data storage approaches, and although my mind was initially swaying toward the NoSQL camp, I can say with a fair amount of certainty, that I’ve found a good compromise. 

You can read the full store here.

Wednesday
Aug042010

Dremel: Interactive Analysis of Web-Scale Datasets - Data as a Programming Paradigm

If Google was a boxer then MapReduce would be a probing right hand that sets up the massive left hook that is Dremel, Google's—scalable (thousands of CPUs, petabytes of data, trillions of rows), SQL based, columnar, interactive (results returned in seconds), ad-hoc—analytics system. If Google was a magician then MapReduce would be the shiny thing that distracts the mind while the trick goes unnoticed. I say that because even though Dremel has been around internally at Google since 2006, we have not heard a whisper about it. All we've heard about is MapReduce, clones of which have inspired entire new industries. Tricky.

Dremel, according to Brian Bershad, Director of Engineering at Google, is targeted at solving BigData class problems:

While we all know that systems are huge and will get even huger, the implications of this size on programmability, manageability, power, etc. is hard to comprehend. Alfred noted that the Internet is predicted to be carrying a zetta-byte (1021 bytes) per year in just a few years. And growth in the number of processing elements per chip may give rise to warehouse computers of having 1010 or more processing elements. To use systems at this scale, we need new solutions for storage and computation.

Click to read more ...

Monday
Aug022010

7 Scaling Strategies Facebook Used to Grow to 500 Million Users

Robert Johnson, a director of engineering at Facebook, celebrated Facebook's monumental achievement of reaching 500 million users by sharing the scaling principles that helped reach that milestone. In case you weren't suitably impressed by the 500 million user number, Robert ratchets up the numbers game with these impressive figures:
  • 1 million users per engineer
  • 500 million active users
  • 100 billion hits per day
  • 50 billion photos
  • 2 trillion objects cached, with hundreds of millions of requests per second
  • 130TB of logs every day

How did Facebook get to this point?

Click to read more ...