Install rbenv and ruby-build to Amazon Linux (cloud-init).
- Copy & paste content of
user-data.sh
to EC2 RunInstances user-data - Then, logging in to EC2 instance as ec2-user and run
install-ruby.sh
.
; dependencies: | |
; http://build.clojure.org/releases/org/clojure/clojure/1.2.0/clojure-1.2.0.jar | |
; http://github.com/downloads/sirthias/parboiled/parboiled4j-0.9.8.2.jar | |
; http://github.com/downloads/sirthias/pegdown/pegdown-0.8.5.3.jar | |
(import 'org.pegdown.PegDownProcessor) | |
(def input-text " | |
A First Level Header | |
==================== |
(defn get-hash [type data] | |
(.digest (java.security.MessageDigest/getInstance type) (.getBytes data) )) | |
(defn sha1-hash [data] | |
(get-hash "sha1" data)) | |
(defn get-hash-str [data-bytes] | |
(apply str | |
(map | |
#(.substring |
# Mac Homebrew command to install the RDS command-line tools | |
# Ubuntu users may find https://launchpad.net/~awstools-dev/+archive/awstools/ useful | |
brew install rds-command-line-tools | |
rds-create-db-parameter-group mysql-utf8 -f mysql5.1 -d "MySQL 5.1 configured for UTF-8" | |
rds-modify-db-parameter-group mysql-utf8 \ | |
--parameters="name=character_set_server, value=utf8, method=immediate" \ | |
--parameters="name=character_set_client, value=utf8, method=immediate" \ | |
--parameters="name=character_set_results, value=utf8, method=immediate" \ |
#!/usr/bin/env ruby | |
# This script provisions a Ubuntu 10.04 LTS (lucid) 256 server on | |
# Rackspace CloudServers with ssh password logins disabled and only | |
# the | |
# public key at ~/.ssh/id_rsa.pub authorized to login. The server will | |
# be terminated after 60 seconds. You need a CloudServers username and | |
# api_key to test this script. | |
require 'rubygems' |
Install rbenv and ruby-build to Amazon Linux (cloud-init).
user-data.sh
to EC2 RunInstances user-datainstall-ruby.sh
.(defn uuid [] (str (java.util.UUID/randomUUID))) |
# Update, upgrade and install development tools: | |
apt-get update | |
apt-get -y upgrade | |
apt-get -y install build-essential git-core curl libssl-dev \ | |
libreadline5 libreadline5-dev \ | |
zlib1g zlib1g-dev \ | |
libmysqlclient-dev \ | |
libcurl4-openssl-dev \ | |
libxslt-dev libxml2-dev |
Adrian -
I appreciate that you spent time in writing this post. I know I've been up until 2am writing similarly long ones as well. I will take responsibility for having what is likely an irrational response (I blame Twitter for that) to the term "NoOps", but I invite you to investigate why that might be. I'm certainly not the only one who feels this way, apparently, and thus far have decided this issue is easily the largest distraction in my field I've encountered in recent years. I have had the option to simply ignore my opposition to the term, and just let the chips fall where they may with how popular the term "NoOps" may or may not get. I have obviously not taken that option in the past, but I plan to in the future.
You're not an analyst saying "NoOps". Analysts are easy (for me) to ignore, because they're not practitioners. We have expectations of engineering maturity from practitioners in this field of web engineering, especially those we consider leaders. I don't have any expectations from analysts,
require "faraday" | |
require 'typhoeus' | |
conn = Faraday.new(:url => 'http://httpstat.us') do |builder| | |
builder.request :url_encoded | |
builder.response :logger | |
builder.adapter :typhoeus | |
end | |
conn.in_parallel do |
When working with large, high volume, low latency systems, it is often the case that processing data sequentially becomes detrimental to the system's health. If we only allow 1 process to work on our data we run into several challenges: