This was my first year attending the open source focused OSCON conference by O’Reilly. I’m a huge Velocity fan, and get a lot out of that conference, hence I figured I would try another conference. Overall I found this conference far less valuable to me for several reasons. While there was a bit of interesting content, the show lacked focus in general. There were show floor exhibits including do it yourself electronics, non-profit, to commercial vendors. Much of the conference was for recruiting in Portland, where lots of startups trying to keep pace with growth pull talent. Here are some of the better sessions I attended and a little bit about them:
Since I’ve already done some programming in Node for my Google Glass App, I attended this one more to get a better tutorial than my hack/trial by fire. My programming skills are hackery at best 🙂
You can find the content here : http://cacois.github.io/nodejs-three-ways/#/
This was a good primer, but there were a couple people in the room who needed a lot of tech support. Additionally some pre-prep by attendees would have made this much smoother. We did some good WIFI load testing, which showed the network couldn’t handle peak loads.
An ElasticSearch Crash Course – http://www.oscon.com/oscon2014/public/schedule/detail/33571
Andrew Cholakian (Found)
I’ve written a lot about ElasticSearch, the internals of the engine were probably the most useful content I got from OSCON this year. I have a much better understanding of the technology with these fundamentals. Here are some notes:
- Wikipedia is moving to it
- Github code search based on it
- Netflix using it for log data
Indexes can live anywhere, and are split across
Each Index has documents
Every field has an index
Docs are routed via hashing and sharded
Shards are lucene indexes – they are replicated
Deleting and updating indexes are expensive.
Writes are slow
Cannot do transactional operations
Docker – Is it Safe to Run Applications in Linux Containers?
Jerome Petazzoni (Docker Inc.)
This is one thing which is a major issue with putting Docker into production. The lack of control and general security are missing and this presentation was interesting and much needed. Jerome was an excellent presenter and made some very good points. I especially liked the idea of running app instances read only, that avoids most of the security issues.
Tracing and Profiling Java (and Native) Applications in Production – Twitter
Kaushik Srenevasan (Twitter)
Interesting discussion of how Twitter who is a heavy Java and Scala shop handles instrumentation. They run their own OpenJDK JVM distribution with customizations running on CentOS. In summary this is somewhat dated view of instrumentation since commercial BCI and instrumentation on Java has some so far. If you don’t want to pay for something and want to build your own, this is somewhat interesting, but has very limited capabilities in terms of what modern APM can do today. Here are the other notes:
- Java, Scala most popular
- Some C++
- Some Ruby (Kiji), Python
They bundle their own JVMTI agents in the code.
- Low latency garbage collection on dedicated hardware and mesos
- Services are getting larger
- Scala optimizations – functional programming language
- Tools : Contrail, Twitter diagnostics runtime
- They have an internal project for monitoring for visualization
- Continuous on the whole system
- Wanted something like dtrace, but they don’t have it on Linux
- Using perf for the linux profiling
Please leave comments here or on twitter @jkowall thanks!
Comments or opinions expressed on this blog are those of the individual contributors only, and do not necessarily represent the views of Gartner, Inc. or its management. Readers may copy and redistribute blog postings on other blogs, or otherwise for private, non-commercial or journalistic purposes, with attribution to Gartner. This content may not be used for any other purposes in any other formats or media. The content on this blog is provided on an "as-is" basis. Gartner shall not be liable for any damages whatsoever arising out of the content or use of this blog.