Big O
A visual introduction to big O notation.
34 posts
A visual introduction to big O notation.
👋🏼 This is part of series on concurrency, parallelism and asynchronous programming in Ruby. It’s a deep dive, so it’s divided into 12 main parts:
Your Ruby programs are always multi-threaded: Part 1 Your Ruby programs are always multi-threaded: Part 2 Consistent, request-local state Ruby methods are colorless The Thread API: Concurrent, colorless Ruby Interrupting Threads: Concurrent, colorless Ruby Thread and its MaNy friends: Concurrent, colorless Ruby Fibers: Concurrent, colorless Ruby Processes, Ractors and alternative runtimes: Parallel Ruby Scaling concurrency: Streaming Ruby Abstracted, concurrent Ruby Closing thoughts, kicking the tires and tangents How I dive into CRuby concurrency You’re reading “The Thread API: Concurrent, colorless Ruby”.
Rails cache using the Brotli algorithm offers better compression and performance. - GitHub - pawurb/rails-brotli-cache: Rails cache using the Brotli algorithm offers better compression and performa...
An interesting study of performance. It seems hard to believe.
A very interesting concept and scenario that affects scale in surprising ways. In the category of everything old is nee again, this was identified and named back in the 1970’s!
Simple, efficient background processing for Ruby. Contribute to mperham/sidekiq development by creating an account on GitHub.
This article will teach you how background processing works as well as the alternatives the Ruby community offers to implement it in your application.
help to kill N+1 queries and unused eager loading. Contribute to flyerhzm/bullet development by creating an account on GitHub.
If you're using ROS on a Raspberry Pi board, check out those useful tips for making more robust, high-performance, and scalable robotics projects!
I’m increasingly encountering users on Heroku that are encountering the need to shard their data. For most users this is something you delay as long as possible as you can generally go for sometime before you have to worry about it. Additionally scaling up your database is often a reasonable approach early on and something I encourage as a starting point as scaling up is easy to do with regards to databases. However, for the 1% of users that do need to shard when the time comes many are left wondering where to start, hence the following guide.
OpiniDatabase sharding is the process of splitting up a database across multiple machines to improve the scalability of an application. The justification for database sharding is that after a certain scale point it is cheaper and more feasible to scale a site horizontally by adding more machines than to grow it vertically by adding beefier servers.
A list of things that we can do when we need to scale a SQL database.
A ruby profiler. See https://ruby-prof.github.io for more information. - ruby-prof/ruby-prof
AppNeta's award-winning suite of network monitoring tools allow unparalleled SaaS-based application end-user performance monitoring for 100% delivery confidence. Request a free demo!
Really Excellent article about queues, overloads, bottlenecks and architecture
Web performance is an extremely important metric in the digital world. Learn tools and tricks for its improvement and enjoy both better Rails-related and General Web performance.
Accurately test your Internet connection speed with this powerful broadband speed test. Improve your bandwidth speed with the truth.
Excellent detailed article about benchmarking a rails app and then introducing a tool that replaces malloc and purports to provide a 2x improvement
An interesting google tool for checking a web sites performance and other behavior.
Handy summary
You know I’m into scalability right now. Here’s a short article with lots of the basics.
The new rails guide on multi databases in activerecord
Excellent performance tips
Always great to see another clarification of this important technique.
Super useful modern rundown of low hanging fruit performance tips for rails.
A great analysis about a question that I had not thought of but is pretty interesting now that you mention it!
A great new tool!