sandman2
tarantool
Our great sponsors
sandman2 | tarantool | |
---|---|---|
3 | 5 | |
1,983 | 3,328 | |
- | 0.8% | |
0.0 | 9.9 | |
4 days ago | 2 days ago | |
Python | Lua | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sandman2
-
Nocodb: Turns Any MySQL, Postgres, SQLite into a Spreadsheet with REST APIs
https://github.com/jeffknupp/sandman2 works with many different backends including sqlite, but postgrest definitely have the auth flow and security model right for these things.
-
PostgREST v9.0.0
I'm using sandman2[0] as a wrapper for psql and mysql databases. how is it different or any feature/differentiating factor I should consider for my future wrappers?
- SQL Alchemy questions
tarantool
-
Python 3.13 Gets a JIT
The article describes that the new JIT is a "copy-and-patch JIT" (I've previously heard this called a "splat JIT"). This is a relatively simple JIT architecture where you have essentially pre-compiled blobs of machine code for each interpreter instruction that you patch immediate arguments into by copying over them.
I once wrote an article about very simple JITs, and the first example in my article uses this style: https://blog.reverberate.org/2012/12/hello-jit-world-joy-of-...
I take some issue with this statement, made later in the article, about the pros/cons vs a "full" JIT:
> The big downside with a “full” JIT is that the process of compiling once into IL and then again into machine code is slow. Not only is it slow, but it is memory intensive.
I used to think this was true also, because my main exposure to JITs was the JVM, which is indeed memory-intensive and slow.
But then in 2013, a miraculous thing happened. LuaJIT 2.0 was released, and it was incredibly fast to JIT compile.
LuaJIT is undoubtedly a "full" JIT compiler. It uses SSA form and performs many optimizations (https://github.com/tarantool/tarantool/wiki/LuaJIT-Optimizat...). And yet feels no more heavyweight than an interpreter when you run it. It does not have any noticeable warm up time, unlike the JVM.
Ever since then, I've rejected the idea that JIT compilers have to be slow and heavyweight.
-
A modern replacement for Redis and Memcached
Then you should like Tarantool which has a built-in Lua (LuaJIT) application server.
-
Ten-year experience in DBMS testing
LuaJIT provides Lua language support, including both the language execution environment and the JIT tracer compiler. Our LuaJIT has long differed from the vanilla version in a set of patches adding features, such as the profiler, and new tests. That is why we test our fork thoroughly to prevent regression. LuaJIT source code is open and distributed under a free license, but it does not include regression tests. Therefore, we have assembled our regression test suite from PUC-Rio Lua tests, test suite by François Perrad, tests for other LuaJIT forks, and of course, our own tests.
-
Tarantool Running on Apple M1: First Results
Starting from 2.10.0-beta Tarantool can natively run on M1 chips. So far this is preliminary support: something may crash or run unstable. We have resolved almost all bugs we knew about, with a few minor ones left. For example, there are some issues with the JIT compiler. But this didn't prevent the team product manager from installing Tarantool on his new MacBook Air and running it every day.
-
PostgREST v9.0.0
A similar project built with intention around this idea is Tarantool[1]. I never hear much about it, but if you're interested in compute close to your data, this is definitely something that would warrant consideration.
What are some alternatives?
falcon - The no-magic web data plane API and microservices framework for Python developers, with a focus on reliability, correctness, and performance at scale.
dragonfly - A modern replacement for Redis and Memcached
apistar - The Web API toolkit. 🛠
benchmarks - Infrastucture benchmarks
hug - Embrace the APIs of the future. Hug aims to make developing APIs as simple as possible, but no simpler.
luatest - Tarantool test framework written in Lua
restless - A lightweight REST miniframework for Python.
alembic - A database migrations tool for SQLAlchemy.
sandman - Sandman "makes things REST".
svelte-postgrest-template - Svelte/SvelteKit + PostgREST + EveryLayout + social auth starter template
TBone - Full duplex RESTful API for your asyncio web apps
YCSB - Yahoo! Cloud Serving Benchmark