Kawika Technologies pvt ltd Software Development Company in Trivandrum
Continuous architecture improvement of a cross-border online trade platform
1. CONTINUOUS ARCHITECTURE
IMPROVEMENT OF A CROSS-BORDER
ONLINE TRADE
PLATFORM
By Harvey Bai From China
Meetup at HasGeek,
Bangalore
11, Oct 2014 Totally 19 pages. Free to ask.
2. general things of a globally cross-border
online trade platform
Global Buyer: Search, View Detail, Buy, Pay
and Manage
Seller From China: Communicate, Handling
Logistics Affairs, Manage
Technically, we maintain pair Data Centers and
symmetric equipments in China and USA.
In each center, we maintain the whole
ecosystem to support efficient and safe
invoking.
2
11, Oct 2014
3. general things of a globally cross-border
online trade platform
The simple view
3
11, Oct 2014
4. Problems Confronted and
Solutions
Background:
Business always have a high speed growth
The pressure of suddenly heavy traffic
Sometimes crash happened in the systems
Global users need unified experience
4
11, Oct 2014
5. Problems Confronted and
Solutions
Problems: Capacity
• DB Capacity
• Server Capacity
Solution:
• Center DB switch to Distributed DB, DB
Scalability
• Stateless Server with distributed cache, Server
Scalability
Result: Add DB/Server Machine when need to
support more traffic and relieve the pressure
5
11, Oct 2014
6. Problems Confronted and
Solutions
Problems: Stability
• Unimportant business problem lead to whole site
crash
• An optional business part lead to main business dead
Solution:
• Split, Split, Split: DB/Server Deployment
• Establish Service Centers and maintain well.
• Stabile-Switch: Control the optional part to switch
on/off
Result: Whole site crash never comes again; the
daily running and even the promotion time hitting
we can go through properly.
6
11, Oct 2014
7. Problems Confronted and
Solutions
Problems: Availability
• Something unhappy always happens
• Crash or unreachable for a long time is
unacceptable in the online trade platform
Solution:
• Disaster Recovery
7
11, Oct 2014
9. Problems Confronted and
Solutions
Problems: Availability
• Something unhappy always happens
• Crash or unreachable for a long time is
unacceptable in the online trade platform
Solution:
• Disaster Recovery
• Online Exercise Every Month
Result: Keep the availability not lower than
99.98%. The perfect goal is 99.99%.
9
11, Oct 2014
10. Problems Confronted and
Solutions
Problems: Global Performance
• Performance in and out our Data/Machine Center
ever meet bottleneck
• People in some countries visit out pages
unhappily, because the speed is extremely slow.
• Sometimes the speed in some area suddenly
become slow, which lead to the decrease of the
GMV (Gross Merchandise Volume)
10
11, Oct 2014
11. Problems Confronted and
Solutions
Problems: Global Performance
Solutions:
• Inside our center, network upgrading
Out traffic: 2G->20G
Switch: 1GE->10GE (Gigabit Ethernet)
Special Line from US to China: 155M -> 1G
• Global Performance Improving
Global Performance Monitoring
CDN(akamai) Service Improving
CDN Hitting Percentage Improving: Inner Cache
Improving(L2 Squid->traffic server)
DNS finding Improving: deploy more local NS
Result: Big progress of local performance in Some
area
11
11, Oct 2014
12. Hot Technologies we use
Database Application: Distributed Data Layer
• Usually a client using by the web Application
• Split data to Distributed Database easily
• Access split data with no feeling
• Split data provide high capacity and performance,
even enhance the availability
12
11, Oct 2014
13. Hot Technologies we use
Communication: message queue and remote
procedure call middleware
• Usually synchronous invoke use rpc middleware,
with rmi, hessian, mina supporting
• Asynchronous notify use message queue, with
1G message suspending if save in database, or
with no-limit message suspending if save in SSD
• Can provide the unified interface for simple use
13
11, Oct 2014
14. Hot Technologies we use
Cache: multi-layer Cache to provide higher
performance
• CDN Cache, DNS Cache
• Page Cache when visit large size page, like
product detail pages
• Image Cache in back-end servers, before visiting
the image file server(big network traffic)
• Distributed Cache used by back-end Applications
14
11, Oct 2014
15. Hot Technologies we use
Database Tool: Data Synchronization
• Real time synchronization in Oracle Pair
Machines
• Quasi-real time synchronization in Oracle trigger/
mysql binlog read and copy
• 100, 000 volume for single sysn-channel one
minute
15
11, Oct 2014
16. Hot Technologies we use
Web Servers: Different apps use different
server
• First all Apache plus JBOSS
• Now front-end applications usually Tengine(Nginx)
plus Tomcat 7.
16
11, Oct 2014
17. Other Technologies we use
General Computing: Storm & Hadoop platform
with Hive
Big data: Hbase for big data storage
Cloud computing(Yun): Mainly for entertain
use, such as space and host service, access
data and computing in the cloud platform.
17
11, Oct 2014