Tag: 性能

竞赛选手几乎都会写的两行 C++ 代码

竞赛选手几乎都会写的两行 C++ 代码 在刷算法题、打竞赛的人里,几乎都能看到 main() 里先写这两行: int main() { ios::sync_with_stdio(false); cin.tie(nullptr); } 很多新手会觉得像“祖传模板”,但它们确实能在 IO 很重的题里显著提速。原因主要有两个:同步和自动刷新。 1) 为什么 ios::sync_with_stdio(false) 能加速? C++ 常用输入输出是 cin / cout。默认情况下,它们会和 C 的 scanf / printf …

性能的隐藏引擎: 一切都取决于数据存储的位置(缓存为王)

性能隐藏的引擎:数据存放在哪里决定一切 1. 性能的真正秘密:数据放在哪里决定一切 2. 决定系统快慢的不是 CPU,而是数据的距离 3. 缓存才是现代计算性能的核心 4. 忽视数据局部性,一切性能优化都是徒劳 5. 性能瓶颈不在算力,而在内存层级 6. 数据局部性:被低估的性能决定因素 7. CPU 在等你的内存:缓存层级的真实代价 8. 系统速度快的真正原因:一切都与缓存有关 9. 别再关注 CPU 速度了——数据局部性才是制胜关键 10. 为什么缓存是所有高性能系统的幕后引擎 11. 性能的关键不在于 GHz,而在于距离 12. …

VPS, 专用服务器和云托管专用服务器: 主要区别和建议

理解VPS、专用服务器和云管理专用服务器 选择合适的托管解决方案可能会让人感到困惑,尤其是在当今可用选项繁多的情况下。其中,虚拟专用服务器(VPS)、专用服务器和云管理专用解决方案各自具有独特的优势。在本文中,我们将深入探讨它们之间的区别,并提供建议,帮助您做出明智的决定。 什么是VPS? 虚拟专用服务器(VPS = Virtual Private Server)是在物理服务器上创建的虚拟化环境。使用VPS托管时,您与其他用户共享物理服务器的资源(CPU、内存、存储)。然而,虚拟化技术确保您获得这些资源的专用部分,相比共享主机,提供了更多的控制、灵活性和性能。 VPS托管非常适合需要可扩展性的中小型项目,而不需要支付专用服务器的高成本。 什么是专用服务器? 专用服务器(Dedicated Server)为您提供一整台物理机器,专供您使用。此设置提供无与伦比的性能、定制性和控制力。没有资源共享,您可以根据特定的工作负载优化服务器,使其适用于高流量网站、大型数据库或有高要求的应用程序。 尽管专用服务器提供顶级性能,但它们的价格较高,并且需要高级的技术知识来进行管理。 什么是云管理专用服务器? 云管理专用服务器(Cloud-Managed Dedicated Servers)将专用硬件的优势与云基础设施的灵活性和便捷性结合起来。例如,许多供应商提供裸金属云解决方案,提供专用的CPU和内存,同时融入云的特性,如快速部署、可扩展性和按需计费。 这些解决方案提供专用服务器的原始计算能力,但消除了传统服务器管理的复杂性。它们非常适合那些希望在性能、可扩展性和易用性之间找到平衡的企业。 关键区别 以下是这些托管解决方案之间的主要区别: VPS:共享物理资源,价格实惠,可扩展,适合中等负载的项目。 专用服务器:专用物理资源,价格昂贵,高度可定制,适合资源密集型任务。 云管理专用服务器:专用物理资源,具有云特性如可扩展性和简化的管理。 建议:什么时候选择哪种? VPS托管:最适合创业公司、小型企业或正在发展中的开发者,他们需要一个性价比高且可扩展的解决方案。 专用服务器:最适合企业、大型网站或需要不妥协性能和完全服务器控制的应用程序。 云管理专用服务器:推荐给那些需要专用服务器的计算能力,但又希望拥有云平台的灵活性和管理简易性的企业。 对比表:VPS vs …

MySQL参数一键配置脚本: 有效提升数据库性能

我一直是自己租用VPS服务器,然后搭建各种服务,比如博客就是Apache2+MySQL数据库。一般来说就是默认参数,没有去管,不过最近发现MySQL的性能参数都很保守,不能发挥整个服务器的性能。 然后我就网上搜索了一下,根据参数配置建议,用ChatGPT写了以下Python和BASH脚本。只需要在需要优化的服务器上,跑一下该脚本,然后就会显示参数配置,然后直接把参数添加到MySQL数据库配置参数文件上: /etc/mysql/mysql.conf.d/mysqld.cnf 然后运行: service mysql restart 重启MySQL服务器。 运行了几周,发现效果很好,博客反应速度也快了很多,这很大原因是根据了内存增加了MySQL缓存大小。 Python脚本优化MySQL数据库参数 把下面的Python脚本存成 mysql_config.py 然后运行 python3 mysql_config.py def get_total_ram(): with open('/proc/meminfo', 'r') as f: for line in f: if line.startswith("MemTotal:"): total_ram_kb …

BASH: 通过dd命令测试硬盘读写速度/性能

要使用 dd 命令测试磁盘速度,可以写入一个临时文件并测量写入和读取速度。以下是一些示例: 测试写入速度 此命令将 1GB 文件写入磁盘,并提供写入速度: dd if=/dev/zero of=testfile bs=1G count=1 oflag=dsync if=/dev/zero 使用空字节源。 of=testfile 指定输出文件。 bs=1G 设置块大小为 1 GB。 count=1 指定只写入一个块。 oflag=dsync 确保数据实际写入磁盘,从而提供更准确的速度测量。 示例输出: 1+0 records in …

几条WordPress 博客 有用的 SQL 语句

WordPress 强大是有它的道理,主要原因是它是基于PHP(开源,灵活,快速开发) WordPress 搭建的博客是动态的,因此需要一些缓存插件来避免服务器重复的查询SQL数据库.我建议是少装插件,尽量用PHP和 MySQL 自己写. 如果你移动了博客的地址,那么就会需要以下几条SQL语句来更新文章中的地址(文章也是存在MYSQL数据库中) UPDATE wp_posts SET post_content = REPLACE (guid, 'OLD URL', 'NEW URL'); UPDATE wp_posts SET guid = REPLACE (guid, 'OLD URL', 'NEW URL'); …