Semantic Logger & Rails Semantic Logger v5.0.0 are here!
The high-performance, asynchronous structured logging framework for Ruby & Rails just got a major upgrade.
Ruby 3.2+ • Rails 7.2, 8.0, 8.1
All new documentation: https://t.co/yL7HW9sUVF
@rubylangorg
As a software architect, it is straightforward to develop a complex solution to a complex problem. It is much harder to develop a simple solution to a complex problem.
🚀 @ElixirConf is just around the corner! I'm thrilled to announce my talk: “Supercharging Kafka Processing with Broadway: Achieving Unmatched Parallelism and Efficiency”.
In person standard ticket pricing has been extended through this weekend. #ElixirConf2024
The next generation of brilliant software engineers inspired by Ruby and Rails, have taken the best parts and lessons learnt to create Elixir and Phoenix.
Anyone building new Web Apps without money to burn would be wise to look into Elixir. @josevalim@chris_mccord@elixirlang
Rails has proven that it is one of the best platforms for creating web applications. It will probably continue to be so for as long as web applications are relevant.
I'll probably only move on from Rails when something more important than web apps comes along.
@nateberkopec Patience is also helpful. Remember that OSS devs don’t sit around all day waiting for your amazing PR. They also have real lives, jobs, and families.
Announced our new pricing and packaging today. If you don’t use Salesloft today, now is the time to sign up. Let Salesloft handle the “paperwork” and let your sellers get back to selling. https://t.co/l9ygv6EeIu
@dhh Thankfully AWS Fargate avoids the kubernetes complexity. All we have to say to Fargate is, “Here is my container, run it please”.
Combine it with Terraform to make the process easily reproducible across environments.
@nateberkopec Online processing is about latency, batch processing is about throughput.
With batch processing database intensive jobs can be throttled to spread their activity over time.
Auto scaling database read replicas on demand can improve throughput for read intensive batch jobs.
@nateberkopec That is why we have #devops. Monitor and tune appropriately. If the code is I/O bound, less processes and more threads would be better. For Ruby bound code (E.g. CSV parsing) then more processes and less threads thanks to the GIL. Or use @jruby that only ever needs one process.
@headius Have you tried running Docker locally for development use? That way you can pull up any Linux flavor on demand. Additionally it will help build out the recommended official docker images, that are the future for cloud deployments of JRuby.
@dorkitude Agreed, start small and grow/scale up as customer demand grows. We created a very successful credit bureaus over a 12 year period by scaling our well componentized “monolith” Rails application. Consider @jruby when concurrency is needed. The database is the hardest to scale.
@nateberkopec The next “level-up” is when they need to process a very large file, or dataset. Where to keep all the data? How to share it across hundreds, if not thousands of workers? That is when it is time to upgrade to Rocket Job https://t.co/fk7wocm0LW
@coryodaniel Yes, in our production Rails application we can change the log level without restarting by using https://t.co/yL7HW9sUVF. Combining it with the event mechanism in https://t.co/fk7wocm0LW we can change the log level remotely for any running Ruby class by process id or hostname.
@olivierlacan @jankomarohnic @philnash Checkout the IOStreams gem, it allows the source of the file to be determined at runtime. For example it could be read from an HTTP server, AWS S3, etc just by changing the file name / URI. https://t.co/i80w7JasFH
@headius@PragTob We run G1GC in our Rails app with an 8GB min and max heap size. It turned out to be the most reliable option and we have never had to tune the JVM since.