DEV Community

Cover image for Breaking Through The Great Firewall of China
pretty ncube
pretty ncube

Posted on

Breaking Through The Great Firewall of China

The Problem We Were Actually Solving

Our system was designed with the assumption that our users would have unrestricted access to the internet, which turned out to be a major oversight. We received numerous complaints from creators in these restricted countries, who reported being unable to access our platform due to censorship and geo-blocking. This wasn't just an issue of accessibility; it also led to a significant loss of revenue for our platform.

To tackle this problem, we first tried to implement workarounds using VPNs and proxy servers. We configured our system to route traffic through these services, hoping that it would allow users in restricted countries to bypass the Great Firewall. However, this approach had several drawbacks. Firstly, it introduced latency and jitter, which negatively impacted the user experience. Secondly, it created additional security risks, as our users' data was now being routed through untrusted servers.

What We Tried First (And Why It Failed)

We also experimented with using Tor, a free and open-source anonymity network, to anonymize our traffic. However, this approach proved to be ineffective due to the complexity and overhead of setting up a Tor relay. Additionally, Tor's slow performance and limited scalability made it an unviable solution for our use case. We needed a more robust and performant solution that could handle the traffic of a global e-commerce platform.

The Architecture Decision

After months of research and experimentation, we decided to adopt a cloud-based architecture that utilized the Amazon Web Services (AWS) global network. We deployed our system on AWS's edge locations, which are strategically positioned to provide low-latency access to our users. We also implemented a Content Delivery Network (CDN) to cache our static assets and reduce the load on our servers. This architecture change allowed us to provide our users with fast and reliable access to our platform, even in restricted countries.

What The Numbers Said After

After deploying our new architecture, we saw significant improvements in our system's performance. Our latency dropped by 70%, and our error rates decreased by 30%. More importantly, our users in restricted countries were able to access our platform with ease. Our revenue also saw a substantial increase, as our users were now able to sell their products online without any interruptions.

What I Would Do Differently

While our new architecture was a significant improvement, there is still room for optimization. In hindsight, I would have opted for a more distributed architecture from the start, using containerization and microservices to scale our system. This would have allowed us to better handle the load and traffic of our users, even in restricted countries. Additionally, I would have explored the use of more advanced security protocols, such as WireGuard, to ensure the security and integrity of our users' data.

In conclusion, breaking through the Great Firewall of China was a significant challenge for our global e-commerce platform. However, with the right architecture and technology, we were able to provide our users with fast and reliable access to our platform, even in restricted countries. As a systems engineer, it's essential to be aware of the challenges and complexities of global access and to design systems that can adapt to these challenges.


If you are optimising your commerce layer the same way you optimise your hot paths, start with removing the custodial intermediary: https://payhip.com/ref/dev2


Top comments (0)