15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > 如何永久免费的运行一个网站?

如何永久免费的运行一个网站?

时间:2023-05-09 08:15:02 | 来源:网站运营

时间:2023-05-09 08:15:02 来源:网站运营

如何永久免费的运行一个网站?:除却域名的年费,我的博客站点是运行在云服务器上,如果没有意外,维护的费用应该是零。

云主机

云服务器我使用的是Google Cloud,谷歌云应该是目前唯一一个承诺提供永远免费 Always Free选项的云服务器提供商,其它云服务商应该只提供12个月免费使用选项给新用户

当然,谷歌云提供的永远免费选项仅能是使用一个性能超弱的实例:

性能可能还比不上一个树莓派,但也已经足够让我用来跑一个网站。

环境

操作系统我为方便使用了:Ubuntu 18.04 LTS

数据库

数据库因故使用 MySql 8.0,但这直接在apt-get install mysql-server之后报错,看/var/log/mysql/error.log,显示:

2018-08-12T17:55:07.393408Z 0 [System] [MY-013170] [Server] /usr/sbin/mysqld (mysqld 8.0.12) initializing of server has completed2018-08-12T17:55:11.130992Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.12) starting as process 31122018-08-12T17:55:11.782754Z 0 [ERROR] [MY-012681] [InnoDB] InnoDB: mmap(137428992 bytes) failed; errno 122018-08-12T17:55:11.782817Z 1 [ERROR] [MY-012956] [InnoDB] InnoDB: Cannot allocate memory for the buffer pool2018-08-12T17:55:11.782832Z 1 [ERROR] [MY-012930] [InnoDB] InnoDB: Plugin initialization aborted with error Generic error.2018-08-12T17:55:11.782886Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine2018-08-12T17:55:11.784009Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.2018-08-12T17:55:11.784055Z 0 [ERROR] [MY-010119] [Server] Aborting2018-08-12T17:55:11.789921Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.12) MySQL Community Server - GPL.2018-08-12T17:56:06.388162Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.12) starting as process 32762018-08-12T17:56:07.253414Z 0 [ERROR] [MY-012681] [InnoDB] InnoDB: mmap(137428992 bytes) failed; errno 122018-08-12T17:56:07.253518Z 1 [ERROR] [MY-012956] [InnoDB] InnoDB: Cannot allocate memory for the buffer pool2018-08-12T17:56:07.253535Z 1 [ERROR] [MY-012930] [InnoDB] InnoDB: Plugin initialization aborted with error Generic error.2018-08-12T17:56:07.253564Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine2018-08-12T17:56:07.255109Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.2018-08-12T17:56:07.255993Z 0 [ERROR] [MY-010119] [Server] Aborting2018-08-12T17:56:07.320087Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.12) MySQL Community Server - GPL.直接内存不足,mysqld无法启动。

只好修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,在结尾增加:

performance_schema = off一行,禁用performance_schema节省内存占用,mysql才得以正常启动。

nginx

当然,也还需要nginx,直接 apt-get install nginx即可。

应用

整个网站应用我是使用go编写,并且使用gorazor、esc等工具将用到的模板、静态资源文件等到打包进可执行文件中。

整个程序运行时占用不到20M内存,还有百余兆空余内存:

$ cat /proc/16537/statusName: goblogUmask: 0002State: S (sleeping)Tgid: 16537Ngid: 0Pid: 16537PPid: 16403TracerPid: 0Uid: 1001 1001 1001 1001Gid: 1002 1002 1002 1002FDSize: 256Groups: 4 20 24 25 29 30 44 46 108 114 1000 1001 1002NStgid: 16537NSpid: 16537NSpgid: 16537NSsid: 16403VmPeak: 16820 kBVmSize: 16820 kBVmLck: 0 kBVmPin: 0 kBVmHWM: 13356 kBVmRSS: 9564 kBRssAnon: 5720 kBRssFile: 3844 kBRssShmem: 0 kBVmData: 8920 kBVmStk: 132 kBVmExe: 4320 kBVmLib: 8 kBVmPTE: 80 kBVmSwap: 0 kB$ free -h total used free shared buff/cache availableMem: 581M 352M 66M 900K 162M 135MSwap: 0B 0B 0B

流量

谷歌云服务的免费实例运行时不收钱,但实例跑网站产生的流量可能是需要钱的,比方说,从中国、澳洲产生的访问流量则完全不免费。

怎么办?

在网站前面直接再套一个cloudflare的CDN,cloudflare有提供免费的CDN供个人站点使用!

cloudflare溯源去谷歌云的话,显然也不可能走中国、澳洲的流量。

总结

这样,我们就可以安安静静的近乎永久免费的跑一个网站了。

关键词:运行,永久,免费

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭