Selecting hosting provider and service for site like KhanAcademy - hosting

I'm having difficulties with selecting a host for a website that I'm working on and would appreciate some sincere tips. There are a lot of articles on the topics, many of which are biased, which is why I'm quite confused.
I need help selecting a specific host and service. I have the following requirements and would like a few different suggestions. Ideally, I want one suggestion on a specific service with Cloudflare since that's my primary choice even though I find their offering confusing. I also would like one suggestion with a provider that accepts BTCs as payment.
Now to my requirements:
The website is quite similar to KhanAcademy and Udemy. We want to host about 75 GB of videos that users should be able to view directly on the site (stream) with our own mediaplayer.
We also have about 15 GB of audios that users should be play directly on the site and download.
We do NOT want to use YouTube, Soundcloud or similar services.
Finally, we have an additional 25 GB of files that we need to host, and that users should be able to download.
The media should load quickly but since the site is new, we have no idea of bandwidth requirement. However, we expect that they will be slow at first but grow steadily over time.
We want the hosting service to come with SSL.
And we want a three-year subscription with a fixed upfront fee rather than monthly payments
Although this isn't a must, but we would prefer if we could use the same hosting service for two separate websites with different domains.

Related

Which t3 EC2 instance should i pick as a start when launching a spring/angular webapplication?

I have built a spring boot/angular web application that uses a mySQL database for storage. The web application's main purpose is to be like a social media website for gardeners. Next to this it has a couple of tools that allow the user to generate a personalized planting calendar based on the monthly average temperature curve of the region where the user lives. Alternatively the user can also generate a personalized planting calendar based on planting journals made by other users that live within a certain radius near the user doing the calendar generating. I am using Hibernate Search for this.
I do not expect to get millions of visits in the first months after launching the web application, so my question is: What would be the best ec2 instance type to start out with? Could a t3.micro support an application like that for the first months or two? Also, How will i know when the current instance type can no longer handle the incoming traffic without lag and therefore i need to upgrade to a bigger instance like t3.medium or large?
Thank you
If the instance is suitable or not depends on many things. Based on my experience a micro instance is not enough for many use cases.
My suggestion is to start with a t3.small instance, start gathering metrics in CloudWatch to establish your baseline for few days. Then decide if it is enough or not.
If you are filling all your resources you can eventually upgrade to a bigger instance. However if your app is dealing with Java I think that a medium size is the minimum start.
About the lag and other things, first suggestion is to put CloudFront on top of the EC2 at least for all your static content (suggestion: put your static contents on S3 don't let EC2 serve them). Then I think that the only option is to rely on some third party performance tool, external to AWS.
By the way, I have built the same app on iOS many years ago, with a support website hosted on AWS. Now the app is gone, and the website is unmaintained :-)

Migrate existing Squarespace site to AWS

I have I Squarespace website I made for myself a while back. The main purpose at the time was to have something to link to from my iOS app, and I opted for something expedient rather that thinking long term just to get the app released. Fast forward to now and I have an AWS EC2 instance where I could do more with a personal site in the future. Ultimately it would be nice to get it off Squarespace and not have to pay another full year billing cycle, but the renewal date is a pretty tight deadline at this point.
Nothing on this domain requires must more than frontend web code really, but a completely different page UI could take more time than I have for this. I'm wondering if there might be a way to just temporarily have the Squarespace page source as is running on EC2 so I can worry about a possible non CMS design when I'm not worried about getting billed for another whole year by Squarespace.
I'm not sure if this is possible, but if not it seems like I should just port the content to minimalistic empty html files with no styling just to avoid the billing or get billed for a shorter time period. Billing seems like the limiting factor here. I would also need to add my new credit card to get billed for more time which I also have yet to do.
Basically, has anyone else dealt with this situation personally? What would you recommend I do? Does Squarespace even allow me to port to EC2 somehow, or is that more in the realm of WordPress? Thanks.
Note: Tomcat's what I'm using on the EC2 instance currently. I will also need to do the multiple site per instance setup for this, but I believe that's the most relevant config info here unless I'm forgetting something.
Not sure why you've already chosen to use Tomcat as I don't see anything that would allow you to easily convert your Squarespace site to a Java webapp. It looks like Squarespace sites can be exported into Wordpress, which you could host on an EC2 server.
Alternatively you could use wget to create a static copy of your website which you could then host easily on your EC2 server with Nginx, or skip EC2 and just host the static website on S3.

Linode VPS Capabilities

I have no experience with VPS's. Over the past year or two I've been getting more and more into web development, as a hobby and for work. I'm currently managing one wordpress site, a codeigniter app, a node.js/mongodb app, and various other personal projects. They are currently all hosted seperately (misc LAMP hosting, heroku, etc.).
I'm looking for a solution that will enable me to do the following:
Host Static/PHP Sites/Apps (so a LAMP stack)
Node.js/MongoDB/Redis
capable of other stacks (django/yesod/RoR/etc.)
Would a Linode VPS be capable of handling all of this? None of these sites get large amounts of traffic. The web apps are private, business management apps, used by 2-10 people at a time. The public sites are small business websites and my portfolio. I would like to be able to host future work on the same VPS as well (same types of small sites/apps).
I have no experience managing multiple domains on the same server. Is this easily done (or possible) with a single Linode VPS?
EDIT
I'm looking at the Linode 512MB/1GB VPS's, $20/$40 respectively.
Of course.
Especially after the massive Linode NextGen upgrades, a Linode VPS can easily handle this kind of workload. Since it's a VPS and not merely shared hosting, you get root access and therefore full control over the system.
In addition, Linode includes features such as advanced disk image management that allows you to clone and resize disk images as required and quickly boot into different images, as well as an out-of-band shell that allows direct access to the server's console in the event you cannot access it via SSH. A Linode 1024 (1GB) plan is more than enough for this sort of workload.
There are lots of different VPS providers out there. Rackspace is very expensive but probably has the highest level of reliability (100% uptime SLA with 5% refund per 30 minutes downtime) and outstanding "Fanatical Support". For less critical needs, there are loads of smaller VPS providers that offer cheap rates, but often with only minimal resources and fewer features. Some provide super-fast SSD storage for disk-intensive applications. You should shop around and do your research so that you find a VPS provider that meets your requirements.
I suggest that you may look into a shared hoisting plan on a reputed hosting companies like hostgator since there isn't much traffic.I also suggest you also buy a cpanel for managing tools.Cpanel has a web interface with which you can control every tool using your mouse & keyboard.
On the other hand linode has a CLI interface and their support expects you to have some descent knowledge about managing VPS servers.

I need some guidance and help from pros to host my new app .(please read everything)

I have been making Desktop applications for last few years. but now i have quite that job and thinking about doing working for myself. I have gone through many ideas. finally i decided to develop Online billing application . Since i am new in web application i know very little about web technologies.
I am thinking about developing that application in php or asp.net with mysql database. I don't know which one is better.(you can guide me here). I don't know whether its good idea or not.but i don't want to do job and work for myself that's for sure.
its going to be a big project so I was making budget for this whole project but i don't know what kind of hosting i will need for this app because database load will be very high because its billing application. i don't know how much it will cost me.I will give user free trial for 30 days to use application and if they like they can upgrade their accounts.
So i need your help to decide what kind of hosting will be appropriate.is this ok if i use webhosting that we use to host website which will cost me $10 to $15 a month or i will have to use cloud hosting which will cost me a lot?
I hope this link will give you idea. I want to make application like this : http://www.rapid-billing.com .
pls help me out. it might me small things for you but to me it matters a lot. Thanks
Initially, you won't have very high traffic, so using a cheap, shared server should be fine. If you outgrow it, then you must have some money coming in, so the added expense of cloud hosting will be more tolerable. There's no need to go all-in before you even get going.
That said, many cloud hosts offer some amount of hosting free, which would probably suit you just as well during initial development. An added plus of starting in the cloud is that you won't have to migrate later. Off the top of my head, Google App Engine and Heroku come to mind as well-known cloud hosts with a free tier. Microsoft Azure also provides a free 3 month trial, and I imagine they'd be a good host if you choose to go with ASP.

Single godaddy account suitable for hosting multiple dev projects?

I want a single hosting account where I can put up my development sites, and small sites I do for friends, some might be experiments, some might be public. None will get huge traffic. They'll all either be using PHP roll-my-own or Code Igniter with MySQL.
I'll want to be pointing multiple domain names at different directories under this account. I'll also probably make use of rewrites extensively.
I'm not in the US but US hosting is far more economical. Is godaddy a good choice given my requirements? I'm looking at the base account as it allows unlimited domain names.
What i hate about go daddy is their domain registerations are "expensive". With privacy it comes to essentially $18/domain, compared to someone like dreamhost (which has free privacy $10).
I personally use dreamhost to register my domains and rackspace to serve the content.
Their smallest instance is ~12/month.
I like the freedom rackspace gives me, it is a full linux box with whatever you want. Shared hosts often aren't flexible enough for quirky framework/requirements. In your case, any shared hosting will do as you are using php/CI.
I'm looking at the base account as it allows unlimited domain names.
Nowadays, just about everyone offers unlimited domain names and what not. Not really a killer feature.
In the end shared hosting is shared hosting. You are sharing a space with other users. If it is experimental then it won't matter.
Something you wish to consider is "money back policy". For instance I had at one point an account with MOcha host and they only offer money back inside 30 days, limited money inside 180 days. After that, they eat your money. Something to consider.

Resources