Blog

Search This Blog

Loading...

Wednesday, October 30, 2013

Iron.io @ DevBeat 2013 (talking about Go)

DevBeat 2013 - Nov 12-13th
Iron.io be at the DevBeat 2013 conference in San Francisco on Nov 12-13th. It's a great conference for experienced developers and includes a number of top developer speakers – including Travis Reeder, Iron.io's CTO.

Travis will be talking about Iron.io's use of Go in production. It's been two years from what at the time was a risky move. It's turned out, however, to be a very good decision (as detailed here and here). Travis will expanding on the reasons why and will go in-depth on why we, and many others, believe Go will be powering many of the high-scale cloud applications and services of the future.
DevBeat 2013 
DevBeat is a prime event for experienced developers who are looking to expand their knowledge into new areas – new languages, security, hardware, and team management.   
Speakers include:
• Tim Bray, Dev Advocate, Google
• Tom Preston-Werner, Co-Founder & CEO, GitHub
• Richard Stallman, Founder, Free Software Foundation
• Rasmus Lerdorf, Creator, PHP
• David Heinemeir Hansson, Creator, Ruby on Rails
• Raymond Camden, Senior Developer Evangelist, Adobe
Travis Reeder, Co-Founder & CTO, Iron.io
• Jeff Lawson, Co-Founder and CEO, Twilio
• Alex Payne, Programmer, Writer & Angel Investor
• Jonathan LeBlanc, Principal Developer Evangelist, PayPal
• Eric Minick, DevOps Evangelist, IBM
• See them all here 
Agenda – Tuesday, November 12th

Travis will be there most likely in an Iron.io t-shirt. Look for him if you want to talk about message queueing, async processing, or Go. (Or just get on a list for the next run of t-shirts.) (@treeder)



Special Offer: If you're interested in going, be sure to use the coupon code GoSF and get 20% off:

Monday, October 28, 2013

IronSharp — .NET Client Library for Iron.io (a contribution from a user)

IronSharp is a great new contribution from a long-time supporter and user of IronMQ, IronWorker, and IronCache.

Jeremy Bell created IronSharp to provide updated access in .NET to all Iron.io services. It's a simple solid library that wraps the API calls for IronMQ, IronWorker, and IronCache and includes support for the latest Iron.io features. (It also has a great logo and GitHub page.)

The .NET community is huge force in application development and in cloud computing. And while Iron.io has existing libraries for .NET, IronSharp is an up-to-date addition that is bound to surpass them in popularity and find many fans and adherents.

About the IronSharp Creator

Jeremy Bell is top .NET developer and principal architect at Terryberry Company. He lives in Grand Rapids, MI and his github handle is grcodemokey.





–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

.NET Interface for IronMQ

.NET Interface for IronWorker
.NET Interface for IronCache

We're grateful for the contribution (and the great logo!).

Monday, October 7, 2013

IronCast 4: How to connect to your database from IronWorker - IronWorker 101 Part 4/4

In a series of four IronCasts, we will provide a high-level introduction to using IronWorker, an easy-to-use scalable task queue. In this series, we will be using an example application which is written in Rails. However, the same concept applies to every language or framework.

In this video, we will show you how to connect to your database from IronWorker.



One of the frequent questions that we get asked at Iron.io is how to get your workers to write back to the database, especially in development.

Step 1 - Creating a cloud hosted development database:
IronWorker on EC2 needs an open port to your database, and your database credentials in order to connect to your database. So no matter what language or framework, those are the two small requirements in order for your workers to connect to your DB. So the easiest way to do this is in development is by using a cloud hosted development database. It is generally harder to open a port (that a worker on EC2 can access) to the database on your local machine.

Using heroku as an example, you can create a free heroku development database:
heroku addons:add heroku-postgresql:dev

Step 2 - Passing your database credentials into the payload:
def create
  @snippet = Snippet.new(snippet_params)
  if @snippet.save
    @client ||= IronWorkerNG::Client.new(:token => ENV["TOKEN"], :project_id => ENV["PROJECT_ID"])
    @client.tasks.create("pygments",
                         "database" => Rails.configuration.database_configuration[Rails.env],
                         "request" => {"lang" => @snippet.language,
                                       "code" => @snippet.plain_code},
                         "snippet_id" => @snippet.id)
    redirect_to @snippet
  else
    render :new
  end
end
Step 3 - Connecting to your database using the credentials:
def setup_database
  puts "Database connection details:#{params['database'].inspect}"
  return unless params['database']
  # estabilsh database connection
  ActiveRecord::Base.establish_connection(params['database'])
end

And that’s it! Three simple steps and you have connected to your cloud hosted database from your IronWorker. Click here to take a more detailed look at the repository.

This is the end of the first series of IronCast. We have gone through various basic aspects of using an IronWorker such as writing worker files, prototyping locally and connecting to the database. Please don't hesitate to contact us if you have any suggestions to any topics that you would like to us to cover in future IronCasts.


Thursday, October 3, 2013

Professional Plans → More Resources, Support Options, and Performance Assurances

Iron.io has recently introduced several professional pricing plans that deliver far more messaging and processing capacity, higher level of technical assistance and support, and greater performance assurances.

These plans have been designed based on the needs of many of the production-level customers using Iron.io services. This professional tier is a standardization of custom plans created in the past and are designed to deliver the desired combinations of resources, support, and performance levels.

IronMQ

The IronMQ professional plans — Silver, Gold, and Platinum — offer greater API messaging throughput as well as provide isolated message clustering, custom data retention, and expanded support options.

Isolated Clustering Greater Performance Assurances
The professional tier provide isolated clustering of messages which means messages are retained in servers that are separate from the generic public service. This largely eliminates the impact that external use can have on message throughput and latencies.

Whether you are using message queues to interface with your own worker systems, buffer incoming data, or fan-out events to other systems and processes, isolated clusters ensure that message throughput and message latencies are consistent.

The release of isolated clustering is another step in pursuit of achieving and maintaining high performance and availability levels. These aspects of messaging — in conjunction with guaranteed message integrity — are core tenets at Iron.io. The IronMQ professional plans are intended for high scale production-level users, although anyone who has large volumes of messaging, mission critical needs, or just wants extra throughput assurances will certainly want to look at these new options.

IronWorker

The IronWorker professional plans also include Silver, Gold, and Platinum options – each providing thousands of hours and hundreds of concurrent tasks. The Gold and Platinum options also offer custom data retention so developers can specify the length of archiving for task details and payloads.  This new tier is intended to  provide almost unlimited processing capacity and largely make limitations on scaling up or scaling out a non-factor.

High Concurrency/More Compute Hours Greater Scale
With IronWorker’s professional tier, resource limitations pretty much go away. Developers gain access to thousands of cores without having to manage, provision, de-provision, or even touch a VM. Send tasks (lots of them) and IronWorker will execute seamlessly execute them.

High concurrency means that job durations can be shrunk from hours to minutes. (In a blog post a number of months ago we discussed shrinking email processing from 9 hours to 9 minutes using concurrent processes.)

Higher concurrency also comes in handy when you’re dealing with a large number of asynchronous processes. In the case of Untappd, they use IronWorker to send user tasks to the background to increase app responsiveness. They still want/need these tasks to be executed in a very timely manner and so they can’t have throttling because of lack of server capacity. IronWorker gives them the flexibility to scale as much as they'd like. The new plans now provide an easy way for anyone to get this level of scale.

Expanded Support Options

The IronMQ and IronWorker Professional Plans also include greater support options. Messaging handling and background / async processing are critical parts of almost every production application.

Iron.io’s Professional Plans provide increased contact availability and higher priority issue response. This means that dev teams not only gain greater resources and performance assurances, they also gain more immediate assistance in keeping systems running smoothly and scaling efficiently.

The options available in the Standard, Premium, and 24x7 packages include:

  • Account Managers
  • Technical Assistance and Consultation
  • Higher Priority Support Response
  • Increased Support/NOC Contact Availability (inc 24x7)

Summary

We believe these plans meet the fundamental needs of customers running production-level cloud applications. We’ve worked with a number of customers on custom plans and now are making these plans a standard part of our offering.

Behind every cloud-application of any complexity or size lies a number of independent processes, task workloads, and connections to other systems. Iron.io’s services fill these cores needs. And now with Iron.io’s Professional Plans, developers have the resources, performance assurances, and support options to not only get them to the next level but let them stay at that level — and do so with a strong partner from Iron.io


(FWIW, Iron.io’s standard plans are great and will provide high resource and service levels for developers building the next great apps. There is also the free plan which provides a great way to get to know the capabilities of IronMQ, IronWorker, and IronCache. The professional plans are  just a step up and intended for apps seeing heavy use.)

Tuesday, October 1, 2013

Iron.io @ API:World 2013


Chad Arimura from Iron.io will be speaking at API:World this week. API:World 2013 is part of the DataWeek conference which is being held in San Francisco on Oct 2nd-3rd.

Iron.io @ API:World 2013
The API World conference was created with the mission to be a technology-neutral catalyst of connections, knowledge, trust, and business within the developer community of API providers and consumers. If you are a coder, a startup, or an enterprise that consumes or provides multiple APIs this is an event designed for you.





In a world of real-time data, real-time events, and real-time social interactions - it is becoming more and more critical that API's enable a "real-time web". What does a 'real-time web' mean, and what API-based technologies are core to this vision of the web? 
Moderators/Speakers
• Chris Ismael, Developer Advocate, Mashape (moderator)
• Chad Arimura, CEO / Co-founder, Iron.io
• Stephen Blum, Founder, PubNub
• James Tamplin, CEO / Co-founder, Firebase

Chad will likely be there in an Iron.io t-shirt and wearing his lucky boots. Look for him if you want to talk about message queuing, async processing at scale, Seattle Seahawks football, or playing in a band. (Or just get on a list for the next run of t-shirts.)