I pay about $1000-$2000 per month for visitors from google search.
Of course, I want to be sure they see my landing page before they press back, i.e. I really want a fast site. The content of the site is static html, generated from a wordpress site. Updates are never urgent, i.e. if the site shows 1 day old content is not a problem.
Most of the visitors are in US, EU and Oceania. My origin server is in Germany. Only having a single server in either US or Europe is not good enough, the Atlantic is too big
It seems that Cloudflare is not intended for small sites like this. In reality, the pages are never cached, i.e. Cloudflare always has to download them from the origin.
Suggestions? I am thinking of just have 3 servers myself, one in US, the current in Germany, and Singapore, and then using GeoDNS instead.
Using page rules you can define which patterns of URL you wanna serve from cache as described here.
If you are looking for cache everything solution with a single click, it is not that easy it looks in first glance (what if contents delivered to logged-in users are supplied from cache?). Here is a related thread.
That is what I have today. Everything cached by nginx with long expiry. However, 100ms is a lot, remember that since browser only load few resources a time, it adds to a second at least. And, if we anyway do that, what is the purpose of the cloudfront http-proxy
I already have warming up geographically, I have a server in US, EU and Singapore just for that. However, it seems that cloudfront is so distributed in US, so that the likelyhood a US person benefits from another US person already visting the site is very low.
I think this is the core of the problem. Having many sites inside US is a good thing for a large scale site, but useless for a small site like mine. I would prefer one or maybe 2 US locations.
This may be a good use case for Argo and it’s Tiered Caching. It improves Cloudflare <-> Server connection speed and manages a Tiered Caching per macro area. It costs 0.10$/GB, but I see improvements on way more distributed websites than a single server.
Maybe adding a couple of servers distributed between EU and US and then traffic split using using DNS geo-routing may also help.
Yes, I think DNS geo-routing is most likely a better solution. I do not even need Cloudflares caching. It seems to me that Cloudflare doesn’t support geo-routing?
I am about to build my own solution as a workaround for this issue.
Neither Argo nor load balancing achieve our both wish, to have a very fast page loading in the relevant locations with the relevant conversion pages.
Could you explain why load-balancing solves the problem. My idea is two have 3 origin-servers (US, EU, and Singapore) which have nginx with all the static pages. I then user load-balancing as a geodns so that all Cloudflare users in the US to the US-orgin.
So, a US visitor might end up in any of Cloudflare’s servers in the US, but then it will ask my origin in the US for the data, i.e. no Atlantic to cross.
Hi @mattias1,
the thing is that you make the problem of a CDN to your problem.
If you start to do reverse-proxing for your webapp, why do you not build your own CDN for the problem at all?
So instead of distributing the data across multiple servers I would prefer to check how use existing solutions and to make them independent to any CDN provider.
But maybe you need to check if your goals fit to mine:
mandatory:
my critical pages (mostly sales pages with low traffic) have to be in the CDN cache preloaded (KO criteria)
to build a CDN independent solution, so if the very unexpectedly case occurs and I cannot work anymore with my current CDN provider, I want to be easily able to switch the new CDN provider
I do not want to build and especially manage additional webservers for my target regions. For this are the CDNs invented and I am willing also to pay CDN-services for it, if it solves my issues. But I am unwilling to manage, to replicate and to ensure that data is properly synced first to my reverse-proxies and aftewards to the CDN reverse proxies. This brings too much senseless complexity into the solution (too many failure-points)
nice to have
easy to use and to understand CDN interface
use my own DNS master server and replicate/sync to CDN servers
I have already a working solution for multiple markets in combination with Cloudflare. It is still beta version, but I can add you to the beta test.
We have a working solution for: US, EU, Asia, Australia
On schedule for South America, Africa
If you are interested, get in touch with me. I can give you a free trial in exchange for honest feedback to the solution.
Hello shaytoder,
since we are right now still in beta, please let me know what time you need it?
we are about building a online form on our website, you can also get in touch via the website.
best wishes