tinspin/rupy
View on GitHub ↗ ★ 149 Java
HTTP App. Server and JSON DB - Shared Parallel (Atomic) & Distributed
74 mentions on Hacker News by 4 people: 0 stories, 74 comments · first 2015-12-23 · latest 2025-08-22
20082026
-
…it. I will however compare Javas NIO (epoll) with the new Virtual Threads IO (without pinning). http://github.com/tinspin/rupy
comment by bullen · 2025-08-22 · in Io_uring, kTLS and Rust for zero syscall HTTPS server -
I built the cluster thick instead: https://github.com/tinspin/rupy And selfhost on home fiber. Saves space and cools silently. Mixing old 2 and 4 for different use cases. Raspberry 5 and 3588 are too hot. Not in the picture Mean Well 50W…
comment by bullen · 2025-07-27 · in A low power 1U Raspberry Pi cluster server for inexpensive colocation (2021) -
…to ready) turnaround of ~1-2 seconds on live (just enough time to switch to your client/browser): http://github.com/tinspin/rupy It also allows for session persistence, so you can test the dev/bug feature without logging in again. And yes…
comment by bullen · 2023-09-06 · in When deployments are easy, code becomes simpler -
…like in practice. Nobody has a clue. Here is the ideal event driven system, it's async-to-async: https://github.com/tinspin/rupy/wiki/Fuse The example is not working because I had to shut down the services for multiple reasons, but the…
comment by bullen · 2023-06-17 · in What Kind of Asynchronous Is Right for You? -
Packaging should always just be zip. Security can just be a OTP: https://github.com/tinspin/rupy/blob/master/src/se/rupy/http...
comment by bullen · 2023-06-05 · in Sandstorm: Open-source platform for self-hosting web apps -
…The simplest way to get that working is Java + NIO with concurrent package, I have done it for you: http://github.com/tinspin/rupy My web server outperforms everything on the planet for multiplayer. Websockets are notoriously hard to…
comment by bullen · 2023-05-16 · in Server-sent events -
…about better if they think about this more as a process and not some technological solution: https://github.com/tinspin/rupy/wiki/Process All input I have is you want your code to run on many machines, in fact you want it to run the same…
comment by bullen · 2023-01-03 · in Modules, not microservices -
I have one in Java: https://github.com/tinspin/rupy (Which is better for a server, Java does not crash and it can do atomic shared parallelism between cores with OO code something you would need to use arrays to achieve in C/C++ without VM…
comment by bullen · 2022-05-17 · in Ask HN: Free and open source distributed database written in C++ or C -
The smallest PaaS you have ever seen is one order of magnitude larger than mine: https://github.com/tinspin/rupy And I bet you the same goes for performance, mine can share data between cores atomically.
comment by bullen · 2022-05-14 · in Dokku – Free Heroku Alternative -
…1TB SanDisk (Raspberry 2) and 4GB Panasonic SLC (Raspberry 4) in my distributed database cluster: http://github.com/tinspin/rupy In my experience industrial versions of mainstream cards are less reliable! I agree, you have to measure…
comment by bullen · 2022-03-22 · in Results of 500 MicroSD Benchmarks on SBCs -
…with integrated distributed JSON database to replace all serverside software I was depending on: http://github.com/tinspin/rupy If you want to be able to run production servers on Raspberry 2 & 4 this is today your only real alternative.…
comment by bullen · 2022-02-23 · in Frugal Computing (2021) -
…and GC, but that model is still to this day the one C++ uses), you can read more about this here: https://github.com/tinspin/rupy/wiki These keep the internal latency of the server below maybe 100 microseconds at saturation, which no C++…
comment by bullen · 2022-02-13 · in Server-Sent Events: an alternative to WebSockets -
I would look at my own app-server: https://github.com/tinspin/rupy It's not the most well documented but it's the smallest implementation while still being one of the most performant so you can learn more than just SSE.
comment by bullen · 2022-02-12 · in Server-Sent Events: an alternative to WebSockets -
Absolutely not, HTTP/1.1 is the way to make SSE fly: https://github.com/tinspin/rupy/wiki/Comet-Stream Old page, search for "event-stream"... Comet-stream is a collection of techniques of which SSE is one. My experience is that SSE goes…
comment by bullen · 2022-02-12 · in Server-Sent Events: an alternative to WebSockets -
…I chose Query.java as the class name for my combined GET/POST container back in 2008: https://github.com/tinspin/rupy/blob/master/src/se/rupy/http... Back then it was hosted on google code.
comment by bullen · 2022-01-31 · in Upcoming new HTTP QUERY method -
https://github.com/tinspin/rupy
comment by bullen · 2022-01-17 · in Jodd – The Unbearable Lightness of Java -
…bottleneck which is CPU concurrent atomic parallelism, and for that you basically need to use Java: https://github.com/tinspin/rupy/wiki (Most people disagree but the VM + GC and Javas memory model allows for atomic shared memory like none…
comment by bullen · 2022-01-11 · in The WebSocket Handbook -
…It goes through all firewalls and scales better than most single threaded websocket servers: https://github.com/tinspin/rupy/wiki/Comet-Stream
comment by bullen · 2022-01-11 · in The WebSocket Handbook -
…it takes 300 lines of code and you have the best container in the world, see my Archive class: https://github.com/tinspin/rupy/blob/master/src/se/rupy/http... What does SQLAlchemy have to do with containers?
comment by bullen · 2022-01-01 · in Ask HN: Is it still worth learning Kubernetes in 2022? -
…the most scalable (and energy efficient) backend in the world, yet very few seem to care or use it: https://github.com/tinspin/rupy It has been proven on a real project with 5 years uptime and 350.000 users:…
comment by bullen · 2021-10-12 · in Ask HN: Solo-preneurs, how do you DevOps to save time? -
To build a simple but performant HTTP/1.1 web server is not that hard: https://github.com/tinspin/rupy As long as you only implement the good features!
comment by bullen · 2021-09-29 · in Gemini: The Misaligned Incentives -
…with C/C++, I don't know why; but if you read the quotes you'll see others try to explain it: https://github.com/tinspin/rupy/wiki The VM is good for more things than concurrency, like no seg. fault crashes, which is very good to have on a…
comment by bullen · 2021-08-05 · in Ask HN: Has anyone fully embraced an event-driven architecture? -
…practice I'm baffled by how well Java performs, you can find three quotes that I managed find here: https://github.com/tinspin/rupy/wiki Finally getting threads to cooporate on things is hard and you cannot debug it with any tools, instead…
comment by bullen · 2021-08-03 · in Ask HN: Has anyone fully embraced an event-driven architecture? -
…need to understand things as close to the metal as possible to make it work as good as it can work: http://github.com/tinspin/rupy To not use async. is really bad, you are wasting so much CPU. Even in a async. scenario just copying memory…
comment by bullen · 2021-07-08 · in Networking I/O with Virtual Threads – Under the hood -
…in about an hour. Yup, I learned everything I need to know about this project in 5 minutes: https://github.com/tinspin/rupy/blob/7d7972932101b0bbe473a4f... I hope you're successful in your Minecraft replacement, as I've enjoyed playing…
comment by mdaniel · 2021-07-05 · in Cloud-Native Database Systems (2021) -
…to learn everything in about an hour. But here is the only documentation I have written so far: https://github.com/tinspin/rupy/wiki/Storage To see it in action with source: http://fuse.rupy.se (multiplayer system prooven with 350.000…
comment by bullen · 2021-07-05 · in Cloud-Native Database Systems (2021) -
I made my own HTTP app. server and distributed JSON database: https://github.com/tinspin/rupy On top of this I have made many projects and I still use all of them today even 10 years later, some favourite: http://fuse.rupy.se (multiplayer…
comment by bullen · 2021-05-16 · in Ask HN: What are some tools / libraries you built yourself? -
In 7000 lines I add multi-threading, non-blocking IO, dynamic responses, chunking and hot-deployment: https://github.com/tinspin/rupy Used in a product by 300.000 end-customers at 90% approval rating without rebooting for 4 years.
comment by bullen · 2021-04-02 · in An HTTP server in a single .c file -
…for Mime in my app. server, then I realized Mime is pretty simple and replaced it with this file: https://github.com/tinspin/rupy/blob/master/mime.txt
comment by bullen · 2021-03-29 · in Ruby off the Rails: Code library yanked over license blunder -
…and client: My Java HTTP server hot-deploys a .jar containing new code with a simple classloader: https://github.com/tinspin/rupy My C+ 3D MMO engine uses .dll/.so hot-reloading so that the game code can change while the engine is running,…
comment by bullen · 2021-03-24 · in Crazy fast build times, or when 10 seconds starts to make you nervous (2012) -
…The first file I opened says "non-blocking and asynchronous" in the first line of the comment. https://github.com/tinspin/rupy/blob/master/src/se/rupy/http... Your methods that are supposedly doing this use the synchronize keyword whose…
comment by CyberDildonics · 2021-03-23 · in “Is Parallel Programming Hard, and, If So, What Can You Do About It?” v2 Is Out -
…model VM with GC. I can't explain it, just claim that my code works and performs accordingly: https://github.com/tinspin/rupy
comment by bullen · 2021-03-11 · in Why asynchronous Rust doesn't work -
…that my app. server kicks everythings ass to the stone age in terms of performance and ease of use: https://github.com/tinspin/rupy It's facinating to see humans struggle with the wrong tools, and defending those same tools without even…
comment by bullen · 2021-03-10 · in Why asynchronous Rust doesn't work -
…people to use JavaSE on the server and hot-deploy to the servers directly with async. non-blocking: http://github.com/tinspin/rupy 2) For clientside: mostly C syntax (compiled with C++ compiler) is your best option and I recently made a…
comment by bullen · 2021-01-16 · in Maximizing Developer Effectiveness -
I made a completely async. HTTP app. server and then added a distibuted async. JSON database on top: https://github.com/tinspin/rupy The problem with async. is that once you add one thing as async., you need to change everything to be…
comment by bullen · 2020-12-17 · in Computers Without Clocks – Ivan Sutherland (2002) [pdf] -
…Google lawsuit is over. I cannot explain the performance I'm getting yet but I'm working on that: https://github.com/tinspin/rupy/wiki (Under "Why Rupy is using Java")
comment by bullen · 2020-10-13 · in Keeping CALM: When Distributed Consistency Is Easy -
…clusters of 4 (2GB) & 2 (the older version) on 32-bit so I can run my PaaS at record flops/W/$: https://github.com/tinspin/rupy
comment by bullen · 2020-09-29 · in Xen Project officially ports its hypervisor to Raspberry Pi 4 -
Ok, I'll bite. What are "all the limitations" of the Servlet spec? Let's start with this: https://github.com/tinspin/rupy/blob/master/src/se/rupy/http... How is the abstract class of yours less limited?
comment by eternalban · 2020-09-22 · in A Picture of Java in 2020 -
…your projects; I made a app server and distributed database that fits in a 166KB .jar unobfuscated: https://github.com/tinspin/rupy
comment by bullen · 2020-09-22 · in A Picture of Java in 2020 -
…of a cluster like this you can look at my distributed HTTP app. server + JSON database solution: https://github.com/tinspin/rupy It's actually usable for live services on RPi 2 and on RPi 4 it beats Intel on float ops./joules at 100%…
comment by bullen · 2020-08-12 · in Let's Build a 28-Core Raspberry Pi Cluster -
…in all practical senses gone). It's simpler, consistent and scales like a monster on the server: https://github.com/tinspin/rupy/wiki/Comet-Stream The only thing that is annoying in the browser is that Chrome does not allow you to remove…
comment by bullen · 2020-06-28 · in WebTransport API -
I have been de-googling (youtube) video streaming with my app server lately: http://github.com/tinspin/rupy The last google dependency I now have (SMTP) will be added to rupy once I finish my MMO!
comment by bullen · 2020-06-05 · in Help Us DeGoogle FOSS -
…opportunity to discuss what I learned building a joint (on the same memory) parallel app. server: http://github.com/tinspin/rupy To fully use concurrency without monitors I think we need to accept the cost of cache misses. When Java…
comment by bullen · 2020-02-21 · in The Problem with Threads (2006) [pdf] -
…own HTTP app server with integrated distributed JSON database and self host on a raspberry cluster: https://github.com/tinspin/rupy
comment by bullen · 2019-12-07 · in Deploy-your-own-SaaS: “only yours” cloud services for everyday needs -
…you want to do joint (on the same memory) parallel HTTP with Java I have a stable solution for you: https://github.com/tinspin/rupy
comment by bullen · 2019-11-07 · in Async-await on stable Rust -
I use ext4 with my distributed async-to-async JSON database: https://github.com/tinspin/rupy/wiki/Storage You can try it here: http://root.rupy.se The actual syncing is done over HTTP with Java though so maybe that's why it works well for…
comment by bullen · 2019-11-06 · in File systems unfit as distributed storage back ends: lessons from Ceph evolution -
I added the same feature to my Java app server: http://github.com/tinspin/rupy it's a simpler design which compiles, zips and hotdeploys over HTTP to a classloader. But it's fast enough as long as you keep each project small.
comment by bullen · 2019-07-11 · in How Dark Deploys Code in 50ms -
…look at my tiny web-server for the simplest hot-deployment implementation I have made/found so far: https://github.com/tinspin/rupy/blob/master/src/se/rupy/http...
comment by bullen · 2019-06-09 · in OSGi After 20 Years