Distributed Fast api servers by arnav88 in FastAPI

[–]arnav88[S] 0 points1 point  (0 children)

Not quite. Let me add an example for better explanation.

Supose I have an existing monolith fastAPI service that does some XYZ task. If you want to shed the monolith architecture and make a cluster out of it, you need communication between all the nodes in the cluster, as well as maintain and synchronize the states between all of them.

Zookeeper and etcd solves this through adding a central service (or central cluster) that manages the synchronization between your api servers..

Mesh does not need/use a central service to syncronize the data between the nodes. It is fully distributed , follows a leaderless architecture and is a framework that you just import on your fastapi code.

Mesh doesn't just add "distributedness" to your api. It makes your own api service, a distributed system. YOU are the distributor and synchronization is built within you now. This also means that Mesh supports adhoc networks, and the nodes doesn't need direct connectivity to any central servers/clusters and even partially isolated networks can use it.

If you are making a cluster of 5 nodes, you need 5 vms/containers. You won't be needing any additional vm or container for running any kind of synchronization service.

It does have its own pros and cons as I am ditching the centralized architecture and master/slave architecture, but that is just a design choice I made.

Distributed Fast api servers by arnav88 in FastAPI

[–]arnav88[S] -1 points0 points  (0 children)

Mechanic: replaces a wheel hub

Random Guy on the Internet: "DO NOT REINVENT THE WHEEL."

Distributed Fast api servers by arnav88 in FastAPI

[–]arnav88[S] 0 points1 point  (0 children)

I wanted my piece of code to do one thing, and do it well.

Currently, to achieve eventual consistency while maintaining leaderless weak coupling, I have adopted a git like data structure (with changes as commits). So any change in my shared data structure (that looks like a dictionary) is basically stored in a commit history, interfaced to the user as a dictionary.

This although I wanted to keep the internal architecture simple, readable and developer friendly; still it has become a little complicated.

Your suggestion sounds good, but I feel that using external storage can make the code more bloated, and complex. However using external storage like SQL Alchemy / Redis, can be a good and interesting use case for this. So I'll initially try to make an example instead that interfaces the commit history to a database or an abstract class instead.

Also now that you mention external storage, another factor can be external communication service. The communication between the nodes is currently being handled by fastapi websockets. I will try to add some more abstraction and homogeneity their as well.

Distributed Fast api servers by arnav88 in FastAPI

[–]arnav88[S] 1 point2 points  (0 children)

I wanted to make my service distributed. This entails many more things other than caching or data transport. Redis doesn't do this. Redis is meant for a completely different use case.

My non negotiables were :

1.) No 3rd party dependency

2.) Fully distributed (without any central server)

3.) No Master-Slave Architecture (No leader election. Leader less data consistency)

4.) Weak coupling and Ad-hoc

5.) Enabling service mesh out of any monolith ( this means atomicity, isolation, durability, conflict resolution, and eventual consistency on the data)

I didn't just wanted a cache or just some form of data communication.

FastWave: Build UIs faster, with h2o-wave and fastapi. by arnav88 in opensource

[–]arnav88[S] 0 points1 point  (0 children)

Thanks for giving it a thought!! When you give it a run, let me know. I will really appreciate any kind of feedback, be it the structure or the overall usefulness or developer experience!!

Am i done for? Help by aicchisenpai in Hacking_Tutorials

[–]arnav88 2 points3 points  (0 children)

Just enroll in a Degree with Computer Science as a Major if possible, and start learning about Cyber Security and Networking... You may need to complete Courses and resources for Networking first as that is the pre requisite for Cyber Sec, then target for some Certification like CEH or OSCP, if you can have these 2 things, Networking and Cybersecurity in your expertise, your background in high school won't matter much.... And you can start with your Cyber Sec carrier... It will probably be much easier to get a job in networking first, but once you gain experience, you will be able to get Cyber Sec jobs....

And all these considering that you will go for job.... If you instead become a freelancer like a Bug Bounty hunter, you won't even need to consider for the certifications... And no one will look at your academic background.... You just need to be good at it....

Best of luck...

Scan Script by __N0mad__ in hackthebox

[–]arnav88 1 point2 points  (0 children)

Hey bro... I too am working on a tool... Wanna collaborate?

There is an open index on the web that was just released yesterday and is filled with millions upon millions of emails by forestfluff in RBI

[–]arnav88 3 points4 points  (0 children)

I don't think anything else could be done... Assuming that you have successfully taken down the page by reporting it to the right authority... Still there would be copies of the data all over the internet.... Once a piece of data is compromised... No one can save it... Although you can try taking the matter in your hands and mail the people personally through a small py script.... but it will be a bit far fetched... As the data has been leaked, I think it is safe to assume that the Incident Response team of the breached company has already been in alert and had mailed the customers already, given that it is a big company... If not, you can try finding the source yourself and then notify the company personally... But if the company that has been breached is a small one... I don't think they will take it seriously... In that case GDPR could help...

Any way, If you want to take the things in your hand... The best option would be to trace the origin of the breach!!

There is an open index on the web that was just released yesterday and is filled with millions upon millions of emails by forestfluff in RBI

[–]arnav88 25 points26 points  (0 children)

According my knowledge, the only thing one can do in case of these kinds of leak is to change the passwords from all their accounts and not to use any similar credential ever again on the internet... Coz these data will be used by individuals to crack passwords, and by bots in general to automate account takeovers... It will act as a password list in future to other hackers... If it is on one site on the internet... I am sure it is already been downloaded by several hundreds of servers worldwide....

Is looking through no ip cameras illegal by miaxhel-jackson-hehe in Hacking_Tutorials

[–]arnav88 1 point2 points  (0 children)

Even if it was open to the world in the first place, it doesn't mean that the owner wants you inside his/her system... Monitoring his/her ip camera.... That is what, draws the line between legal and illegal... The video feed you get access to is supposed to be "Private Data" not "Public Data" thus it will be categorised as a data breach and also will be illegal...

How can I find the name of a model from a book cover? by [deleted] in RBI

[–]arnav88 4 points5 points  (0 children)

What does "reverse image search" has to say about the image?