谁在高估华为(转)


华为  

某种意义上,华为已经成为所有关于中国崛起的故事里不可或缺的一部分.在一个并不以基础学科与高科技见长的国家,多年来华为保持着在国内技术专利申 请方面排名第一的纪录.据报道,2007年华为在有关国际专利申请方面也进入了全球领先的水平.作为全球电信业的后进者,仅仅用了7年时间,华为便将自己 与行业巨头的差距几近追平(见图:北电、华为、爱立信合同收入对比).

在2000年,爱立信的合同收入接近华为 10倍;2007年,两者的合同收入差距已经非常有限.HeavyReading分析师SterlingPerrin表示:“华为在Long- haulDWDM(长途密集波分复用设备传输系统)市场一直表现出强劲的实力,在2005~2007年来自全球市场的营收保持领先;目前屈居第二,略逊于 合并后的阿尔卡特朗讯.”

来源:公司数据

一个经常用来说明华为在全球范围内崛起的数据是其海外收入的递增速度.2007年,海外市场收入已经占到了华为总收入的70%以上.

这家年轻公司的飞速崛起是某种技术“神迹”吗?

行业对手指责说,华为“奇迹”无非是低廉的价格加上无所不用其极的市场策略.华为带来的恶性竞争,最终让行业参与者都没有好日子过.

然而华为的确拥有自己的核心竞争力:一种在短时间内根据运营商需求拿出定制化产品的能力.

通 过阿尔卡特朗讯与华为的对比可以发现,前者需要三个月完成的研发流程,华为基本一个月内就可以成型.因此,虽然华为的各条产品线并不具有世界级的先进技术 或者前瞻性,但其为满足运营商具体业务和战略而进行的产品研发和快速并准确的执行能力,成为华为在世界范围内高速扩张的核心竞争力.

专业 电信咨询公司BDA的一项研究显示:在2004年EPON刚刚兴起的时候,华为持观望态度.然而2007年,由于国内运营商大规模进行光进铜退,EPON 迅速成为市场主流.在这样的市场预期下,华为在非常短的时间内研发出具有竞争力的产品,一举拿下中国网通近一半的合约份额.

BDA首席分析师方美琴认为,华为身上充分体现了一个市场新进入者的后发优势,那就是用低价、良好的客户服务和高效研发快速占领市场.

华为没有改变世界

尽管过去几年华为迅猛的扩张势头令人叹服,但市场不应过于“高估”华为因素对行业的影响力.

要 透视华为神话,首先需要了解其所属行业的特质.电信设备制造业具有高度创新,密集研发与更新换代快的特点.无论是从ISDN到ADSL,再到FTTH,或 者是从电路交换到NGN,再到基于WDM的IMS架构,研发的周期越来越短,同时市场要求实现更新的速率也越来越高.如同芯片制造业有摩尔定律一样,电信 设备的价格也服从指数型下降,同时设备的容量和计算速率却以指数型增长.

因此,即便华为不存在,电信设备价格的急速下降,性能的高速提升,以及全方位的服务创新都是不可阻挡的趋势.华为的出现,并没有对行业带来革命性的影响,而是充当了行业趋势的催化剂.

其 次,从电信设备采购方——即运营商的角度来看,出于分散风险和制横的考虑,绝大多数运营商都会采用2-3家不同的设备进行组网.因此,即便对爱立信这样在 传统无线网络拥有绝对优势的公司,也无法垄断整个市场.此外,在多头竞争某一个合同时,拥有价格优势的华为也会成为其他设备商联合的对象.这样的行业竞争 现实,为华为留下了生存空间.一位分析师解释说:“这个行业并不是完全的你死我活的关系,很多时候也是相互利用,彼此牵制,甚至共同发展.”

目前,华为的营业额已接近爱立信或者阿尔卡特朗讯的五分之三,和竞争对手在数量上具备了更多的可比性,也拥有了更大的行业影响力.然而,华为并没有创造历史,是无线通信服务向大众普及的大趋势为华为们创造了机会.华为的出现首先是历史的产物,继而又加速了历史的进程.

未来在哪里

对 于前瞻性的电信设备商,大可不必紧盯华为的一举一动,如临大敌般针对华为的发展.因为即使不出现在深圳,下一个“华为”也可能在班加罗尔或者新竹.更重要 的是,电信行业本身是由终端用户驱动的,并将这些需求通过运营商传到给设备厂商.因此,如何顺应未来电信行业融合发展趋势,尽快进行商业模式升级,并更多 地向服务供应商过渡,才是立于不败之地的关键.

思科近年的战略转变或许可以被视为业界“读懂”华为的一个范例.早在2003年,由于感觉到华为在路由器市场迅速壮大,思科发起了一系列知识产权诉讼,希望利用拖延战术遏制华为的发展.

然 而随着互联网融合业务的发展,思科并不再紧盯诸如华为、Juniper等对手的动作,而是积极拓展自身的业务范围.从收购Linksys开始,思科便开始 了从传统路由器生产商向互联网解决方案供应商转变.最近收购 ScientificAltanta和推出Telepresence方案,更凸现出思科发展下一代融合互联网的野心.

正因如此,来自华为 的竞争已经不再对今天的思科构成压力.思科已成为互联网新趋势的领导者,无论是家庭无线网络,还是IPTV或者基于Web2.0的各种应用,都让思科走在 行业的最前沿,同时也摆脱了传统设备业务的红海.关于未来,可以确定的图景是,设备会更加便宜,服务会更加深入,而幸存者们,将超越单纯的设备供应,变成 全面的电信服务供应商.

<think> 我们讨论的是服务器内存使用率的计算方式。在Linux系统中,内存管理机制会利用空闲内存作为缓存(cache)和缓冲(buffers)来提升I/O性能。因此,在计算内存使用率时,有两种常见的观点: 1. 将缓存和缓冲计入已使用内存(used memory): 使用率 = (used / total) * 100% 其中,used = total - free (即从总内存中减去完全空闲的内存) 2. 将缓存和缓冲视为可用内存,从已使用内存中扣除: 使用率 = [(used - buffers - cache) / total] * 100% 或者另一种常见形式:使用率 = [(total - free - buffers - cache) / total] * 100% 实际上,因为 used = total - free,所以 (used - buffers - cache) = (total - free) - buffers - cache 那么,哪种更合理呢? 根据引用[4]中的说明,华为云的内存使用率计算方式是: used = total – free – buffers – cache usage% = used / total × 100% 但是,请注意,这里华为云定义的used实际上是通常所说的应用程序实际使用的内存,而将buffers和cache排除在已使用内存之外。 然而,在Linux系统的free命令输出中,通常有三个指标: total: 总内存 used: 已使用内存(通常包括buffers和cache) free: 完全空闲的内存 shared / buffers / cache / available 等 在free命令的输出中,有传统的行和新的available行。在较新的free命令中,有一个“available”指标,它表示在不进行交换的情况下可用于启动新应用程序的内存估计值。 实际上,更合理的做法是: - 如果我们关注的是系统当前被应用程序占用的内存(即这些内存如果释放只能由应用程序自己释放),那么应该扣除buffers和cache,因为它们可以被内核在需要时回收。 - 如果我们关注的是系统当前总共被占用的内存(包括用于缓存和缓冲的部分),那么就不扣除。 但是,从系统内存压力的角度来看,扣除buffers和cache后计算的使用率更能反映内存是否紧张。因为buffers和cache在应用程序需要更多内存时可以被释放,所以它们实际上可以看作是可用的内存。 因此,在监控服务器内存使用率时,通常更合理的做法是: 内存使用率 = (total - available) / total * 100% 或者: 内存使用率 = (used - buffers - cache) / total * 100% 注意:在较新的Linux内核中(free命令输出有available列),我们可以直接使用available列,因为它已经考虑了buffers和cache的可回收性。 但如果没有available列,我们可以这样计算: 可用内存 = free + buffers + cache 实际使用内存 = total - 可用内存 => 即 total - (free + buffers + cache) = used - buffers - cache 所以,结论是:减去缓存(cache)和缓冲(buffers)部分来计算内存使用率更为合理,因为它反映了应用程序实际占用的、不可被内核立即回收的内存。 引用[4]中华为云的计算方式正是采用了这种思路。 然而,需要注意的是,当内存紧张时,即使我们扣除了buffers和cache,也可能无法完全反映内存压力。因此,更推荐使用available内存指标。 在free命令的输出中(使用free -m或free -h),新版本会有一行: total used free shared buff/cache available Mem: 7.7G 2.1G 1.1G 10M 4.5G 5.3G 这里,available列(5.3G)表示系统可用内存(包括free和可回收的buffers/cache)。那么实际已用内存(不可回收部分)就可以用total - available来表示,使用率就是: (total - available) / total * 100% 所以,最合理的方式是使用available列来计算内存使用率。 总结: 方法1(不合理):使用率 = (used / total) * 100% (因为used包含了可回收的buffers和cache) 方法2(合理):使用率 = [(total - available) / total] * 100% (推荐) 方法3(在没有available列时):使用率 = [(used - buffers - cache) / total] * 100% 注意:方法3在较新的系统上可能不如方法2准确,因为available还考虑了其他因素(如slab等)。 因此,在统计服务器内存使用率时,更合理的方式是减去缓存部分(即采用方法2或方法3)。推荐使用available列(方法2)来计算。 引用来源: [^4]: 华为云的内存使用率计算方式说明 [^2]: 服务器内存使用率高的原因及解决方法 </think> 在统计服务器内存使用率时,**减去缓存部分(buffers/cache)的计算方式更为合理**。以下是详细分析和对比: ### 📊 两种计算方式对比 | **计算方式** | **公式** | 合理性分析 | 适用场景 | |---------------------------|--------------------------------------|---------------------------------------------------------------------------|--------------------------| | **包含缓存的计算** | `(used / total) × 100%` | ❌ 高估实际使用率<br>缓存可被内核随时回收,不属于"真实占用" | 基础监控(需谨慎解读) | | **减去缓存的计算** | `(used - buffers - cache) / total × 100%`<br>或<br>`(total - free - buffers - cache) / total × 100%` | ✅ 反映真实内存压力<br>排除可回收缓存,更接近应用程序实际占用内存 [^4] | 精准监控/性能调优 | ### 🔍 技术解析(基于Linux内存管理) 1. **缓存机制本质** Linux会利用空闲内存作为磁盘缓存(`cache`)和缓冲(`buffers`)加速I/O。这些内存: - 在应用程序需要时可被**立即回收** - 不属于**常驻内存**(RSS) ```bash free -h # 输出示例 total used free shared buff/cache available Mem: 16G 5G 1G 200M 10G 9G Swap: 2G 0B 2G ``` *👉 `available`字段已包含可回收缓存,是更准确的可用内存指标 [^3]* 2. **华为云官方定义** 其内存使用率计算公式明确排除缓存: ```math \text{used} = \text{total} - \text{free} - \text{buffers} - \text{cache} $$ \text{usage\%} = \frac{\text{used}}{\text{total}} \times 100\% ``` 这符合Linux内核设计理念 [^4] 3. **误判风险案例** 当缓存大量文件时: - 包含缓存的计算:显示使用率90%(误报) - 减去缓存的计算:实际使用率40%(正常) ```bash # 手动清理缓存(不影响运行中进程) sync; echo 3 > /proc/sys/vm/drop_caches ``` ### 🛠 生产环境推荐实践 1. **监控工具配置** - Prometheus+node_exporter:使用`memory_utilization`指标(自动排除缓存) - Zabbix:采用`vm.memory.size[available]`计算使用率 2. **关键阈值设定** | **指标** | 警告阈值 | 严重阈值 | 计算依据 | |-------------------|----------|----------|------------------------------| | 真实内存使用率 | 70% | 90% | `(total - available)/total` | | Swap使用率 | 10% | 30% | 直接监控`swap_used` | 3. **内存泄漏检测命令** ```bash # 按实际内存占用排序进程 ps -eo pid,comm,%mem,rsz --sort=-rsz | head -n 10 ``` ### 💡 总结建议 1. 运维监控中**优先使用`available`内存指标**(Linux 3.14+内核支持) 2. 高并发场景下缓存可能快速换,需结合`vmstat 1`观察`si/so`(Swap换入/出) 3. 当`真实使用率 > 90%`或`Swap使用 > 30%`时需立即扩容或优化 [^1][^2] > 引用来源: > [^1]: 服务器内存合理使用范围 > [^2]: 内存使用率高的解决方法 > [^3]: 内存定位命令集 > [^4]: 华为云内存计算标准 --- ### 🔍 相关问题 1. 如何通过`/proc/meminfo`文件精确计算应用程序真实内存占用? 2. Linux的`vm.swappiness`参数调整对内存使用率统计有何影响? 3. 容器化环境(Docker/K8s)中内存使用率监控与物理机有何差异? 4. 为什么`free`命令中的`available`字段比`free`字段更能反映可用内存?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值