Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

According to the statistic (Q1 2020) from Google Analytics, China has the most users using MXNet website which account for 22.95% of the total number of users. But the website load time is very slow in aforementioned area, the average page load time is 20.38s compare to US it is 2.12s.Image Removed

The cause of this problem [1] is, according to Apache Infra team, MXNet website is served from Japan for Chinese visitors. Due to the Great Firewall of China [2], it can cause long delay on visiting oversea websites. But at present Apache can not get access to serve from China itself by reason of Chinese government regulations.
This can cause frustration on our customers in China, and in Q1 2020 there is a 15.69% decline in traffic (measured by sessions) from China compared to previous quarter.
Image Removed

...

Proposed Solution

Based on what Apache Infra team can offer now, this is a compromise solution that can address this issue. A Chinese CDN which is pointed by a different but similar domain name ‘mxnet.cdn.apache.org’ is set up by Apache Infra team. It is a Chinese CDN provider and there is a huge improvement on website loading speed in China, as shown below.
Comparison of loading speed on Chinese server
Image Removed Image Removed
To achieve optimal results, this project is scoped into two parts, both of which aim to increase the usability of MXNet website and provide better user experience.

Part 1. Redirect Chinese Visitors
In .htaccess file, add rewrite rule for Chinese visitors with the help of Apache mod_Geoip module- This is the most accurate and fastest way to redirect.
05/28 - According to Apache Intra team [1], Mod_Geoip is enabled on their server.

Solutions not considered:

  1. Perform a server side redirect by checking Accept-Language header of HTTP requests when users initially attempts to access the website. This is a fast and relative accurate approach which can avoid the client side loading and subsequent redirect.

...

  1. Use Apache server side 3rd party Geo iP based redirect module - more accurate filter to visitors, but is not likely available to use, for Apache only offers limited modules for incubator project websites to use 
  2. Check browser navigator.language - Server side redirect can achieve same function with faster speed
  3. Use browser Geolocation API - Accurate, but much slower and need users’ permission to get related data

...