Founded in 2015 by our CEO Jensen Yee, Asia Focus Group has ventured into diverse business sectors. We are a small group of highly motivated individuals who strive to make use of disruptive technologies in day-to-day life. We develop business ideas into reality doing most of our web and mobile apps development in-house and sometimes with the help of our vendors.
We started off with an Executive Recruitment Consulting firm in Singapore and Bangkok. Asia Focus Group invests in a variety of endeavours across multiple sectors one of which is Blockchain technology. Our current business portfolio includes multiple technology ventures. Headquartered in the vibrant and bustling financial centre, Singapore, Asia Focus Group (AFG) is at the heart of an ever-changing technology landscape. Other than Singapore we have offices in Bangkok, India and Vietnam.
We have few exciting blockchain based projects including Peer-to-Peer Exchange (Cryptonium.one), Cryptocurrency Trading Exchange (Exonium.one), our ERC-20 based Cryptocurrency Coin Consentium(CSM) and CSM Wallet App(Consentium.net). These platforms form an ecosystem for our blockchain enthusiast community to have everything under one roof. In addition, we are also working on a few other exciting projects.
In April 2018 we were upgrading technological architecture of our web applications to sustain ever-increasing load of concurrent users which was proving fatal to our old JSP website. Due to the growing issues, we began searching for high-performance cloud servers and high Internet bandwidth especially to China region as most of our traffic comes from China. Because of the Great Firewall of China, dedicated bandwidth to China is always very costly and still not sufficient enough to sustain thousands of concurrent users which we were expecting. Our old Hong Kong-based cloud vendor had a limited 10Mbps bandwidth to China on top of already limited overall internet bandwidth.
With our increasing needs in mind, we performed proofs-of-concept on multiple vendors. Surprisingly, we found UpCloud to have very good internet bandwidth to cities in China, even better than our Hong Kong-based vendor.
As China connectivity was our top priority, we continued our tests on UpCloud instances for internet bandwidth and intranet speeds. We even did CPU, Memory, and SSD benchmarks and found UpCloud to be performing very well as claimed on their website. Naturally, we hadn’t previously thought much of these claims as they tend to generally be just marketing speak. However, to our amazement, all the things we wanted, fit in exactly with UpCloud and we had no reason to search any further.
Hosting on UpCloud
Previously, we had a few platforms in beta and production stages running on AWS. While we had no major issues, the costs were creeping up along with our daily growing user base. At one point, our automated card billing began failing because the bills were exceeding the limits of our bank card. That is when we had to seriously start thinking about cost-cutting and savings on infrastructure spending.
At the time we were already familiar with UpCloud after 8 months of using their services alongside with our AWS environments with zero downtime at that.
As UpCloud had already proven themselves, we did a small feasibility study and formed a report mapping our current AWS cloud VMs to equivalent UpCloud cloud servers with pros, cons, and pricing comparisons. After careful review and team discussions, we decided to fully go with UpCloud by moving our AWS infra step by step. Due to a number of add-on services we had previously used on AWS, we also needed to switch to open-source alternates along with a few manual configurations while migrating our servers.
- S3 – We used min.io which is compatible with the S3 libraries
- Multi A-Z – We manually set up backup/standby servers in different data centres
- Cloudfront – We used UpCloud’s Layer3 Firewall service with its add-on cost
- Automatic Database Replication/Slave Replica – We setup replication manually in Postgres and MySql
- Read-only replicas and Load Balancing – We used master-slave replication for read-only replicas and Nginx for front end load balancing
- AWS Lambda – We had to modify our code to remove AWS Lambda dependency, although there are few open-source alternates changing the code was a more feasible option
We also run a few cryptocurrency master nodes on UpCloud. If you are familiar with blockchain technology, you must already know how resource hungry master nodes can be. Moving to UpCloud servers has helped us become even more competitive with better performance to price rations.
When our entire infrastructure was in the process of moving to UpCloud, it became apparent we were in need of a private cloud to run our core services. We decided to form a hybrid cloud infrastructure keeping important financial and confidential services in private cloud, for performance and security reasons, while customer-facing and general services were built on public cloud servers. Of course, each part of the environment still needed to be able to communicate between private and public cloud for information exchange.
Since we already had public cloud instances on UpCloud, going with their private cloud services was a no-brainer as the pricing and SLA were too good compared to other vendors. After multiple meetings with UpCloud team and finalizing on terms and cost etc. we received our new private cloud in March 2019.
After releasing a new version of our website on UpCloud, we have been able to scale and handle thousands of concurrent users without even straining the hardware resources as expected. Actually, we downsized one of our servers as it was utilizing very low resources compared to before, even at high load. The latencies have been very good at 5 different locations in China we tested. The download speeds are also better than on our old Hong Kong vendor’s dedicated China bandwidth.
Other than technical criteria, every organization always has a budget to spend on infrastructure. Surprisingly, UpCloud has been better at pricing too. At first, it seemed too good to be true, but UpCloud really is much more cost-efficient! We have been able to save more than 55% on our monthly spend on infrastructure by migrating from AWS to UpCloud. The savings have been very good, however, moving wasn’t quite so straight forward as we had used a number of proprietary services on AWS. Open source alternatives and little homegrown ingenuity covered the differences in built-in services.
If you work with blockchain technology then you already know how critical it is to sync master nodes quickly and keep up the pace. The importance of SSDs and IOPS cannot be overstated as these processes are very storage intensive. UpCloud has given us an edge with MaxIOPS! While before we had to pay extra for high IOPS on AWS storage, on UpCloud we get it as de-facto along with N+1 redundancy which was the cherry on the cake.
Furthermore, updating the blockchain quickly and continuously onto the master node or full blockchain server takes a dedicated high-speed internet connection. As we migrated onto UpCloud, we had 500Mbps up and down dedicated internet bandwidth for each instance which was very critical for the master node sync processes. UpCloud also generously upgraded the connection speeds to 1Gbps on time for any of our servers when we were in need. Better yet, they’ve since upgraded their whole infrastructure so that every server receives 1Gbps by default.
With continuous syncing of blockchain data, our master nodes also eat a lot of data bandwidth. The transfer quotas included in UpCloud’s plans have been more than enough. We’ve yet to go over the limit even once which is another big cost saving.
Lastly, UpCloud’s Automated and Scheduled Backups are also major time savers on our admin overhead. Along with the instant Snapshots that we use to replicate servers without having to spend time on re-installation, configuration, etc.
A few things we have missed could make our experience even better.
- Grouping related servers in logical groups
- Multiple user roles and rights management as one in AWS IAM
- Ready to use OS templates for services such as min.io(S3), DNS servers, Mail Servers, Chat servers etc.
- Alternative to AWS Lambda
We trust UpCloud will maintain their high-performance, cost-effective, and highly reliable services in the future. These qualities will continue to provide an edge in spending and performance to startups like us.