绿色 LAMP:通过优化您的网站来节省能源和保护环境

还没有读者喜欢这篇文章。
open here

Opensource.com

优化的网站对环境更好。 为什么? 它们速度更快,更易于使用,内容针对 SEO 和用户体验进行了优化。 这意味着计算机 *和用户* 花费更少的时间等待页面加载。

当我第一次创建网站时,那是 1995 年,互联网要简单得多。 那时人们正在使用网络,但它不像现在这样融入我们的生活。 那时互联网的生态足迹非常小。 当然,当时已经有一个遍布全球的计算机网络,但没有像现在这样巨大的数据中心。

国际电信联盟估计,如今,信息和通信技术 (ICT) 部门约占全球温室气体 (GHG) 排放量的 2% 到 2.5%。 关于这方面有很多研究,但我们喜欢 这种能源消耗分解,随着我们找到更多使用互联网的方法,这种能源消耗仍在快速增长。

网络行业在这方面并没有特别积极,但像 Manoverboard 这样的共益企业正在尽最大努力通过诸如创建负责任的、对地球友好的网站这样的博客文章来提高人们的意识。 此外,Google 决定 将页面速度作为搜索排名的因素 促使许多网站更加重视性能,并且移动设备使用的兴起正在帮助提高性能,因为带宽通常受到限制。

这是一个大问题。

在本文中,我将介绍如何优化您的服务器以节省能源和时间。

服务器优化

所有网站都在服务器上运行,并且大多数使用 Linux、Apache、MySQL 和 PHP/Python (LAMP)。 有很多变体,因此我们无法在此处一一介绍,但我们可以介绍基础知识。

页面压缩

页面压缩可以在 Apache 中或在您的 PHP 应用程序中完成。 确保您的页面和 CSS 文件已压缩(您可以使用 Gzip),并为静态内容设置过期标头以进行扩展的浏览器缓存。

缓存管理

考虑安装 Varnish 或类似的工具。 缓存管理可以在 Drupal 中使用 Varnish 模块 (7/8-dev) 完成,在 WordPress 中可以使用 Purge Varnish Cache 完成。 Varnish 是一款功能强大的页面缓存工具,可配置,对于某些网站,我们建议设置一个单独的 Varnish 服务器,专门用于提供缓存的页面。

Memcached 是一个高性能的分布式内存对象缓存系统,可以通过减轻数据库负载来加速您的 Drupal 站点。 在 Drupal 中,使用 Memcache 模块 (7/8-dev) 或 Memcache Storage 模块,在 WordPress 中使用 Memcached 对象缓存。 这可以与 Apache 一起运行,也可以在自己的服务器上运行,具体取决于预期的需求。

在 Drupal 7 中,安装 Alternative PHP Cache (APC)APC 模块 以缓存 PHP 代码。 在 WordPress 中,您可以使用 APC 对象缓存后端。 您也可以在 Drupal 8 中执行此操作,但期待使用 PHP7,它比早期版本的 PHP 运行速度更快。 PHP7 未来可能会有一个 APC 版本,但目前尚不可用。

优化性能

您还应该定期查看优化您的数据库。 Drupal 中的 DB Maintenance 模块 (7/8-dev) 和 WordPress 中的 WP-Optimize 将定期优化您的数据库。 其中大部分也可以使用 cron 脚本在非高峰时段使用 MySQL 命令来完成。

社区有很多其他的建议,关于如何调整您的服务器。 而且,有一个活跃的 Drupal 开发者社区对 高性能配置感兴趣。 还有关于 MySQL 性能 改进 Drupal 的视频。

还要考虑使用 PHP-FPM (FastCGI 进程管理器) 尤其是 HHVM (Hip Hop 虚拟机),它们可以提供性能增强。 新版本的 Drupal 和 WordPress 应该都可以很好地与 HHVM 一起运行,尽管它与 PHP 并不完全相同,因此某些贡献的模块/插件可能会出现问题。

内容分发

考虑使用内容分发网络 (CDN) 来分发您的部分内容。 CDN 从针对访问者位置进行优化的位置提供内容。 Wim Leers 撰写了一系列关于设置 CDN 模块 以优化您的站点的精彩文章。 WordPress 的 CDN Enabler 插件的工作方式非常相似。 Mightybytes 写了一篇关于为什么分享像这样的代码有利于可持续性的好文章。

我们应该很快就能够采用 HTTP/2,因为它提供了性能改进,并且可能会抵消聚合 CSS/JS 文件的优势。 目前,浏览器对 HTTP/2 的支持非常好,但只有不到 2% 的站点支持这种新协议。 通常最好还是假设较少的 HTTP 请求 = 更快的页面加载。

硬件升级

但有时您只需要在更快的硬件、更多的 RAM 和固态硬盘上多花一点钱。 拥有多个服务器可以帮助处理繁忙的站点。

考虑切换到绿色托管公司。 寻找使用绿色能源并具有强大环境政策的主机。 您的服务器 24/7 全天候运行,因此拥有绿色主机可以对您的 CO2 排放产生重大影响。 Mightybytes 有一篇博客Manoverboard 有一篇关于绿色托管的白皮书,值得一看。

评估您的表现

最后,当您完成所有更改后,不要相信启用这些工具就能 *正常工作*。 需要评估页面优化以确定您是否真的提供了更快的页面。

使用 Yahoo's YSlowGoogle's InsightsWebPageTest 评估网页,并注意您在各个页面上的表现可能会有所不同。 Yahoo! 还有一个值得考虑的最佳实践列表

页面速度始终会因负载而异。 考虑使用 Apache HTTP 服务器基准测试工具来模拟您的网站在重负载下的性能。 Drupal 的 Performance Logging and Monitoring 模块 和 WordPress 的 P3 (Plugin Performance Profiler) 插件可以帮助您跟踪一段时间内的性能。

结论

最后,让您的网站和环境的可持续性产生影响比您想象的要简单得多。 无论您的技术专长如何,都可以在任何级别的网站开发中进行改进。 您所需要做的就是使用您所掌握的工具。

标签
Mike Gifford head shot
Mike Gifford 是 CivicActions 的高级战略家,也是公共部门数字可访问性的思想领袖。

评论已关闭。

Creative Commons License本作品已根据知识共享署名 - 相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.