1,882 karma · joined December 8, 2017
def function1():
print ("hello outer")
def function2():
print ("hello inner")
function2()
function1()
Output: hello outer
hello innerBTW, Github counts 149 SLOC just for this file: https://github.com/jamesmoriarty/forward-proxy/blob/769b6424...
Now you could say, that I could host my own S3 e.g. MinIO in the same DC, but then I could also simply deploy Ceph, which is battle tested for years up to the petabyte range and with iSCSI, S3 and FS interfaces.
So I think this project might give the wrong impression that you can simply combine a Redis with Amazon S3 and then have a good FS solution available, which is unfortunately not the case.
For a stable POSIX filesystem in production latency is key. Often times in a datacenter 10GE is recommended for network storage solutions, not because of bandwidth (which is also important), but for the 10x reduced latency of a 10GE NIC. Most applications simply expect response times of microseconds or a few milliseconds at most from a POSIX Filesystem, they simply cannot run (without modifying the codebase) on something much slower.
But if you had to rewrite your application anyways, then you might want to use plain S3 without the FS, that is easier to operate in the long run.
Yes since years, no.
In database related podcasts you will hear that QPS is considered to be a solved problem nowadays.
I use xterm in tmux, no need for native scrollbar or tabs.
That would be a very unsafe default.
To provide an example for a different case: programs written in Gallina have the weak normalization property, implying that they always terminate.
company on earth put together. Just a few more x10 away.
WireGuard for example is only a relatively small changeset, but has an huge impact for many uses, you can find many comments, posts, write ups, about it all over the internet. Many knew that this feature was going to be huge, well before merge into linux.
On the other hand, if almost no one is discussing a particular change (e.g. the removal of 20k lines of driver code), then the impact will either be very low and unimportant or it will unexpectedly become important, but there was no way you could have known it beforehand.
Sure, it's possible to remove all dependencies from a teams project by copy and pasting the code or by reinventing the wheel, but I'm not sure if these options are better than carefully chosen dependencies (including some maintained by other teams).
RAID 10?
This is unavoidable for many companies, since the code bases are far to large for any single person to grasp them all.
> But more importantly, I doubt micro-services will solve their problem of their monolith not being modular. That seems like an architectural problem that can also be solved in a monolith.
Try to run your monolith in kubernetes, it's possible but not much fun. Since single machines can not longer scale at large, we have to run distributed software, small pieces across hundreds or thousands of machines in order to scale efficiently.
> But in general, I have never seen a company that switched to micro-services, and didn’t end up regretting it a few years later
Netflix?
You can avoid the slow startup by using languages that are able to generate small compiled binary, but then you wouldn't call it a script, because you have to recompile for every change.
Then there are other approaches like xonsh, where you (roughly speaking) replace bash or zsh with a python interpreter. Now you don't have to start the interpreter over and over again, because your shell is python. I think it's an interesting approach, but you have to like python and you will hardly find xonsh on any remote machine, so you are probably still confronted with bash and the like.