[{"data":1,"prerenderedAt":2061},["ShallowReactive",2],{"blog-\u002Fblog\u002Fcomparison\u002Fyuansheng-vs-hunhe-app":3,"blog-related-\u002Fblog\u002Fcomparison\u002Fyuansheng-vs-hunhe-app":485},{"id":4,"title":5,"author":6,"body":7,"category":456,"cover":457,"date":458,"description":459,"draft":460,"extension":461,"faq":462,"featured":460,"image":457,"keywords":472,"meta":475,"navigation":476,"path":477,"seo":478,"sitemap":479,"stem":480,"tags":481,"updated":458,"__hash__":484},"blog\u002Fblog\u002Fcomparison\u002Fyuansheng-vs-hunhe-app.md","原生App和混合App的区别","HNREIS",{"type":8,"value":9,"toc":424},"minimark",[10,19,24,27,95,98,102,106,109,112,127,130,148,151,154,158,161,164,167,182,185,204,207,210,214,217,224,227,250,253,272,275,282,285,288,290,293,297,304,307,310,313,316,344,347,350,391,394,397,400,418],[11,12,13,14,18],"p",{},"企业要做 App 时面临一个核心选择：原生开发、混合开发，还是跨平台框架？三种方式各有特点，",[15,16,17],"strong",{},"选错了会导致成本超支、体验拉胯或后期无法维护，这篇把三者的原理、优劣和选型逻辑讲清楚","。很多企业在这个决策上踩坑——简单内容 App 非要原生开发结果预算翻倍，或追求极致体验却选了混合开发导致体验崩盘。理解每种方式适合什么场景，才能做出正确决策。",[20,21,23],"h2",{"id":22},"原生-vs-混合-vs-跨平台","原生 vs 混合 vs 跨平台",[11,25,26],{},"先把三种方式横向对比，建立整体认知：",[28,29,30,49],"table",{},[31,32,33],"thead",{},[34,35,36,40,43,46],"tr",{},[37,38,39],"th",{},"方式",[37,41,42],{},"开发",[37,44,45],{},"体验",[37,47,48],{},"成本",[50,51,52,67,81],"tbody",{},[34,53,54,58,61,64],{},[55,56,57],"td",{},"原生",[55,59,60],{},"各端各开发",[55,62,63],{},"出色",[55,65,66],{},"高",[34,68,69,72,75,78],{},[55,70,71],{},"混合（Web壳）",[55,73,74],{},"Web+壳",[55,76,77],{},"一般",[55,79,80],{},"低",[34,82,83,86,89,92],{},[55,84,85],{},"跨平台（RN\u002FFlutter）",[55,87,88],{},"一次开发",[55,90,91],{},"接近原生",[55,93,94],{},"中",[11,96,97],{},"原生体验出色但成本最高，混合成本最低但体验一般，跨平台（React Native、Flutter）在中间取得平衡，也是当下主流。下面对每种方式展开说明。",[20,99,101],{"id":100},"原生app","原生App",[103,104,105],"h3",{"id":105},"原理",[11,107,108],{},"原生 App 指各平台用各自官方推荐的技术栈开发：iOS 用 Swift（或 Objective-C）+ SwiftUI\u002FUIKit，安卓用 Kotlin（或 Java）+ Jetpack Compose。代码直接编译为平台原生机器码，调用系统 API 没有任何中间层。两端的代码库完全独立，UI、逻辑、数据层都要各写一套。",[103,110,111],{"id":111},"优势",[11,113,114,115,118,119,122,123,126],{},"原生开发的优势集中在体验和能力上。",[15,116,117],{},"体验出色","：动画流畅度、手势响应、滚动惯性、过渡效果都达到系统级水准；",[15,120,121],{},"性能强","：CPU、GPU、内存调度直接高效，适合游戏、视频剪辑、图像处理等重计算场景；",[15,124,125],{},"原生功能全","：摄像头、传感器、蓝牙、ARKit\u002FARCore、Widget、Live Activity 等系统新特性即时可用，没有跨平台框架的滞后或缺失。",[103,128,129],{"id":129},"劣势",[11,131,132,133,135,136,139,140,143,144,147],{},"劣势同样明显。",[15,134,60],{},"：iOS 一套代码、安卓一套代码，开发量直接翻倍，人员也要分成 iOS 团队和安卓团队；",[15,137,138],{},"开发周期长","：每个功能都要两端各实现一遍，迭代速度慢；",[15,141,142],{},"人才成本高","：资深原生工程师薪资高且稀缺，团队组建和维持成本大；",[15,145,146],{},"功能同步难","：iOS 上线的新功能，安卓版本可能要一两个月后才能跟上，造成版本碎片。",[103,149,150],{"id":150},"适合",[11,152,153],{},"原生适合这些场景：追求极致体验（如视频、游戏、金融交易）；强依赖原生功能（AR、深度传感器、系统集成）；各端差异化（iOS 和安卓的交互逻辑不同，要做差异化设计）；大型 App（用户量大、对稳定性要求极高）。",[20,155,157],{"id":156},"混合app","混合App",[103,159,105],{"id":160},"原理-1",[11,162,163],{},"混合 App 的原理是用 Web 技术（HTML\u002FCSS\u002FJavaScript）开发应用逻辑，再用一个原生\"壳\"（如 Cordova、Capacitor、Ionic）把 Web 内容包装成可分发的 App。运行时本质上是在原生容器里嵌入一个 WebView 渲染页面，通过桥接调用部分原生能力。",[103,165,111],{"id":166},"优势-1",[11,168,169,170,173,174,177,178,181],{},"混合开发的核心优势是",[15,171,172],{},"一次开发多端运行","：同一套 Web 代码既能部署成 iOS App，也能部署成安卓 App，甚至还能复用到 Web 端和小程序端，开发成本大幅降低。",[15,175,176],{},"前端技术栈复用","：团队只要有前端工程师就能开发，不需要组建原生团队。",[15,179,180],{},"迭代快","：HTML\u002FJS 代码可以热更新（部分场景），不用每次都走应用商店审核。",[103,183,129],{"id":184},"劣势-1",[11,186,187,188,191,192,195,196,199,200,203],{},"劣势集中在体验和能力。",[15,189,190],{},"体验一般","：WebView 渲染性能和原生 UI 有明显差距，复杂动画、长列表滚动、手势交互容易卡顿；",[15,193,194],{},"性能\u002F能力受限","：调用原生硬件（摄像头、传感器、蓝牙）要通过桥接层，延迟和稳定性都不如原生；",[15,197,198],{},"接近系统底层的特性几乎无法实现","；",[15,201,202],{},"WebView 兼容性问题","：不同机型、不同系统版本的 WebView 表现不一致，适配成本高。",[103,205,150],{"id":206},"适合-1",[11,208,209],{},"混合开发适合这些场景：内容展示型 App（新闻、资讯、电子书）；企业内部应用（OA、审批、报表）；预算有限的简单 App；已有 Web 端希望快速出 App 版本。",[20,211,213],{"id":212},"跨平台react-nativeflutter","跨平台（React Native\u002FFlutter）",[103,215,105],{"id":216},"原理-2",[11,218,219,220,223],{},"跨平台框架的原理是",[15,221,222],{},"一次编写代码，编译或运行到 iOS 和安卓两端","。React Native（Meta 出品）用 JavaScript\u002FTypeScript 写代码，运行时通过桥接调用原生组件渲染；Flutter（Google 出品）用 Dart 语言写代码，自带渲染引擎直接绘制 UI（不依赖原生组件）。两者都允许在需要时写原生代码补充能力。",[103,225,111],{"id":226},"优势-2",[11,228,229,230,233,234,237,238,241,242,245,246,249],{},"跨平台的优势是当下主流选择的核心理由。",[15,231,232],{},"一次开发多端","：一套代码两端运行，开发和维护成本接近原生的一半；",[15,235,236],{},"体验接近原生","：RN 渲染原生组件，Flutter 自渲染性能强劲，两者都能做到肉眼几乎无差别的流畅度；",[15,239,240],{},"热重载","：代码改动即时生效，开发效率高；",[15,243,244],{},"生态成熟","：RN 和 Flutter 都有庞大的社区和丰富的第三方库，常见功能基本都有现成方案；",[15,247,248],{},"人才相对好找","：会 JS 的工程师转 RN 门槛低，Flutter 学习曲线也较平缓。",[103,251,129],{"id":252},"劣势-2",[11,254,255,256,259,260,263,264,267,268,271],{},"跨平台并非完美。",[15,257,258],{},"特殊原生功能可能要原生补充","：遇到框架没封装的系统 API，需要自己写原生模块（桥接），增加复杂度；",[15,261,262],{},"极致性能不如原生","：重计算场景（游戏、视频处理）或对帧率要求极高的场景，跨平台仍有差距；",[15,265,266],{},"包体积较大","：Flutter 自带渲染引擎，包体积比原生大几 MB；",[15,269,270],{},"版本跟进滞后","：iOS\u002F安卓 新出的系统特性，跨平台框架封装需要时间。",[103,273,150],{"id":274},"适合-2",[11,276,277,278,281],{},"跨平台适合",[15,279,280],{},"绝大多数 App","：电商、社交、内容、工具、企业服务、O2O 等，都是跨平台的典型战场。只要不是极端性能需求或极端原生能力需求，跨平台都是性价比相当高的选择。",[20,283,284],{"id":284},"怎么选",[11,286,287],{},"把三种方式的适用场景总结一下，便于决策。",[103,289,57],{"id":57},[11,291,292],{},"追求极致体验和性能；强依赖原生功能（AR、传感器、系统集成）；各端要做差异化设计；大型 App 对稳定性要求极高。这些场景原生仍是不可替代的选择。",[103,294,296],{"id":295},"跨平台主流","跨平台（主流）",[11,298,299,300,303],{},"绝大多数 App 都适合，平衡成本和体验。电商、社交、内容、工具类 App 用 RN 或 Flutter 都能做出接近原生的体验，且开发和维护成本可控。",[15,301,302],{},"这是当下企业的主流选择","。",[103,305,306],{"id":306},"混合",[11,308,309],{},"简单内容 App、企业内部应用、预算有限或已有 Web 端希望快速出 App 版本的场景。混合开发的体验天花板较低，不要对它有过多期待。",[20,311,312],{"id":312},"别踩的坑",[11,314,315],{},"App 选型中常见的坑，每一个都对应一种典型错误：",[317,318,319,326,332,338],"ul",{},[320,321,322,325],"li",{},[15,323,324],{},"简单App用原生","：明明一个混合 App 就能搞定，非要原生开发，预算和时间翻倍。",[320,327,328,331],{},[15,329,330],{},"追求极致用混合","：要做流畅动画或复杂交互却选了混合，体验拉胯用户骂声一片。",[320,333,334,337],{},[15,335,336],{},"忽视跨平台","：还停留在\"跨平台体验差\"的旧认知里，不知道 RN\u002FFlutter 已经是主流。",[320,339,340,343],{},[15,341,342],{},"特殊功能不考虑原生补充","：选了跨平台却没规划原生模块的开发资源，遇到特殊功能卡壳。",[20,345,346],{"id":346},"成本参考",[11,348,349],{},"三种方式的成本对比：",[28,351,352,363],{},[31,353,354],{},[34,355,356,358,361],{},[37,357,39],{},[37,359,360],{},"说明",[37,362,48],{},[50,364,365,374,383],{},[34,366,367,369,372],{},[55,368,57],{},[55,370,371],{},"各端开发",[55,373,66],{},[34,375,376,379,381],{},[55,377,378],{},"跨平台",[55,380,88],{},[55,382,94],{},[34,384,385,387,389],{},[55,386,306],{},[55,388,74],{},[55,390,80],{},[11,392,393],{},"原生成本最高（两套代码两套人员），跨平台居中（一套代码两端运行），混合最低（Web 技术栈复用）。但成本不能只看开发，还要看后期维护、迭代速度、人才招聘，综合下来跨平台的性价比通常较优。",[20,395,284],{"id":396},"怎么选-1",[11,398,399],{},"落地决策建议按以下步骤：",[401,402,403,406,409,412,415],"ol",{},[320,404,405],{},"评估体验\u002F性能需求：是否有极致体验或强原生功能需求？",[320,407,408],{},"评估预算：预算是否支持两套原生团队？",[320,410,411],{},"大部分用跨平台（RN\u002FFlutter）：绝大多数 App 的主流选择。",[320,413,414],{},"极致需求原生：少数高性能或强原生功能的 App。",[320,416,417],{},"简单混合：内容型或预算受限的场景。",[419,420,421],"blockquote",{},[11,422,423],{},"广州市汉诺雷斯（HNREIS）帮企业做App选型和开发（原生\u002F跨平台\u002F混合）。把你的App需求告诉我们，我们给出建议。",{"title":425,"searchDepth":426,"depth":426,"links":427},"",2,[428,429,436,442,448,453,454,455],{"id":22,"depth":426,"text":23},{"id":100,"depth":426,"text":101,"children":430},[431,433,434,435],{"id":105,"depth":432,"text":105},3,{"id":111,"depth":432,"text":111},{"id":129,"depth":432,"text":129},{"id":150,"depth":432,"text":150},{"id":156,"depth":426,"text":157,"children":437},[438,439,440,441],{"id":160,"depth":432,"text":105},{"id":166,"depth":432,"text":111},{"id":184,"depth":432,"text":129},{"id":206,"depth":432,"text":150},{"id":212,"depth":426,"text":213,"children":443},[444,445,446,447],{"id":216,"depth":432,"text":105},{"id":226,"depth":432,"text":111},{"id":252,"depth":432,"text":129},{"id":274,"depth":432,"text":150},{"id":284,"depth":426,"text":284,"children":449},[450,451,452],{"id":57,"depth":432,"text":57},{"id":295,"depth":432,"text":296},{"id":306,"depth":432,"text":306},{"id":312,"depth":426,"text":312},{"id":346,"depth":426,"text":346},{"id":396,"depth":426,"text":284},"comparison",null,"2026-02-11","原生App（各端原生开发）和混合App（Web+壳）各有特点。本文讲清两者区别、跨平台框架和怎么选。",false,"md",[463,466,469],{"q":464,"a":465},"原生App和混合App什么区别？","原生App是各平台（iOS\u002F安卓）用各自技术原生开发（体验好性能强，但各端各开发成本高）；混合App用Web技术+壳（一次开发多端，成本低，体验稍差）。跨平台框架（React Native\u002FFlutter）介于——一次开发接近原生体验。",{"q":467,"a":468},"企业该用原生还是混合\u002F跨平台？","看需求。追求极致体验\u002F强原生功能\u002F各端差异化，用原生；要一次开发多端、平衡成本体验，用跨平台（RN\u002FFlutter）；简单\u002F内容App可用混合。很多企业用跨平台（RN\u002FFlutter）平衡。",{"q":470,"a":471},"跨平台（RN\u002FFlutter）能替代原生吗？","大部分场景能（一次开发多端，体验接近原生），但极致性能\u002F特殊原生功能可能还要原生。跨平台是主流趋势，适合大部分App。建议一般App用跨平台，特殊需求原生补充。",[101,157,473,474],"跨平台开发","React Native Flutter",{},true,"\u002Fblog\u002Fcomparison\u002Fyuansheng-vs-hunhe-app",{"title":5,"description":459},{"loc":477},"blog\u002Fcomparison\u002Fyuansheng-vs-hunhe-app",[482,378,483],"App","选型","FG0VBYyYxLidz0lKJctiOlizcWGfUhykj8qKucQwsms",[486,889,1308,1674],{"id":487,"title":488,"author":6,"body":489,"category":456,"cover":457,"date":862,"description":863,"draft":460,"extension":461,"faq":864,"featured":460,"image":457,"keywords":874,"meta":879,"navigation":476,"path":880,"seo":881,"sitemap":882,"stem":883,"tags":884,"updated":862,"__hash__":888},"blog\u002Fblog\u002Fcomparison\u002Fapi-jiekou-shiye.md","API、接口、集成这些词到底是什么意思",{"type":8,"value":490,"toc":842},[491,497,501,506,509,520,525,528,531,537,540,545,547,558,563,566,569,583,586,600,605,608,612,626,629,640,643,648,651,658,675,680,683,686,708,713,716,753,759,762,788,791,794,820,823,837],[11,492,493,494],{},"老板常被 API、接口、集成这些技术词绕晕。",[15,495,496],{},"这篇用大白话讲清，帮老板听懂技术沟通。",[20,498,500],{"id":499},"api-是什么大白话","API 是什么（大白话）",[11,502,503,303],{},[15,504,505],{},"API 是两个软件\"对话\"的通道",[11,507,508],{},"例子：",[317,510,511,514,517],{},[320,512,513],{},"你的小程序要查物流 → 通过物流公司 API 问\"单号到哪了\" → 物流系统回\"已签收\"。",[320,515,516],{},"你的官网要收款 → 通过支付 API 让客户付款 → 支付系统回\"付款成功\"。",[320,518,519],{},"你的系统要发短信 → 通过短信 API 发 → 短信平台发出去。",[11,521,522,303],{},[15,523,524],{},"API 让不同软件自动互通数据，不用人工搬",[11,526,527],{},"打个比方：API 像餐厅的\"服务员\"——你（小程序）告诉服务员（API）要什么，服务员告诉厨房（另一个系统），厨房做好端回来。你不用自己进厨房。",[20,529,530],{"id":530},"接口是什么",[11,532,533,536],{},[15,534,535],{},"接口就是 API","（同义词）。技术人员说\"做个接口\"\"对接接口\"，就是做 API 让系统互通。",[20,538,539],{"id":539},"集成是什么",[11,541,542,303],{},[15,543,544],{},"集成 = 把多个系统通过 API 连起来，数据自动流通",[11,546,508],{},[317,548,549,552,555],{},[320,550,551],{},"独立站 + ERP 集成：独立站订单自动进 ERP，ERP 库存自动同步独立站。",[320,553,554],{},"小程序 + CRM 集成：小程序客户数据自动进 CRM。",[320,556,557],{},"系统 + 支付集成：系统通过支付 API 收款。",[11,559,560,303],{},[15,561,562],{},"集成让数据自动流，替代人工搬数据",[20,564,565],{"id":565},"企业为什么要做接口集成",[103,567,568],{"id":568},"不集成的问题",[317,570,571,574,577,580],{},[320,572,573],{},"多个系统（独立站\u002FERP\u002FCRM\u002F物流），数据不通。",[320,575,576],{},"人工把数据从一个系统搬到另一个（累、易错）。",[320,578,579],{},"数据不同步（独立站卖了 ERP 库存没减，超卖）。",[320,581,582],{},"效率低。",[103,584,585],{"id":585},"集成的好处",[317,587,588,591,594,597],{},[320,589,590],{},"数据自动流通（订单\u002F库存\u002F客户自动同步）。",[320,592,593],{},"替代人工（省人力、避错）。",[320,595,596],{},"实时同步（不超卖、不漏单）。",[320,598,599],{},"数据统一（可分析）。",[11,601,602,303],{},[15,603,604],{},"系统越多，集成价值越大",[20,606,607],{"id":607},"常见的集成场景",[103,609,611],{"id":610},"电商独立站","电商\u002F独立站",[317,613,614,617,620,623],{},[320,615,616],{},"独立站 ↔ ERP（订单\u002F库存同步）。",[320,618,619],{},"独立站 ↔ 物流（发货\u002F追踪）。",[320,621,622],{},"独立站 ↔ 支付（收款）。",[320,624,625],{},"独立站 ↔ CRM（客户管理）。",[103,627,628],{"id":628},"企业内部",[317,630,631,634,637],{},[320,632,633],{},"系统 ↔ OA（审批\u002F通知）。",[320,635,636],{},"系统 ↔ 财务（对账\u002F开票）。",[320,638,639],{},"系统 ↔ 企微\u002F钉钉（消息\u002F工作流）。",[103,641,642],{"id":642},"数据",[317,644,645],{},[320,646,647],{},"系统 ↔ 数据分析（数据汇总\u002F报表）。",[20,649,650],{"id":650},"集成怎么实现",[11,652,653,654,657],{},"通过 ",[15,655,656],{},"API 对接","：",[401,659,660,663,666,669,672],{},[320,661,662],{},"确认要对接的系统（ERP\u002F物流\u002F支付）。",[320,664,665],{},"看各系统是否提供 API（文档）。",[320,667,668],{},"开发对接（系统间调 API 传数据）。",[320,670,671],{},"测试（数据准确、异常处理）。",[320,673,674],{},"上线 + 监控。",[11,676,677,303],{},[15,678,679],{},"自建系统（Nuxt\u002FVue）能灵活对接任意系统，这是它比 SaaS 的优势",[20,681,682],{"id":682},"老板该懂什么",[11,684,685],{},"老板不用懂代码，懂这些：",[317,687,688,693,698,703],{},[320,689,690,303],{},[15,691,692],{},"API = 软件之间自动传数据的通道",[320,694,695,303],{},[15,696,697],{},"集成 = 多系统数据自动流通",[320,699,700,303],{},[15,701,702],{},"集成能替代人工、提效避错",[320,704,705,303],{},[15,706,707],{},"集成成本看系统数量和复杂度",[11,709,710,303],{},[15,711,712],{},"懂这些，就能和技术\u002F服务商沟通集成需求",[20,714,715],{"id":715},"集成的成本",[28,717,718,727],{},[31,719,720],{},[34,721,722,725],{},[37,723,724],{},"集成类型",[37,726,48],{},[50,728,729,737,745],{},[34,730,731,734],{},[55,732,733],{},"对接一个系统（如 ERP）",[55,735,736],{},"1-3 万",[34,738,739,742],{},[55,740,741],{},"多系统集成",[55,743,744],{},"3-8 万",[34,746,747,750],{},[55,748,749],{},"复杂（双向同步\u002F多系统\u002F定制）",[55,751,752],{},"8 万+",[11,754,755,758],{},[15,756,757],{},"ROI 明确","（替代人工、提效、避错）。",[20,760,761],{"id":761},"常见误区",[317,763,764,770,776,782],{},[320,765,766,769],{},[15,767,768],{},"\"接口很复杂不用懂\"","：老板懂概念就行（API = 数据通道）。",[320,771,772,775],{},[15,773,774],{},"\"不集成也能用\"","：人工搬数据累易错，不可持续。",[320,777,778,781],{},[15,779,780],{},"\"集成是一次性的\"","：系统升级\u002F业务变化，集成要维护。",[320,783,784,787],{},[15,785,786],{},"\"SaaS 不用集成\"","：SaaS 也要和其他系统打通。",[20,789,790],{"id":790},"怎么判断要不要集成",[11,792,793],{},"问自己：",[401,795,796,802,808,814],{},[320,797,798,801],{},[15,799,800],{},"有多个系统吗？"," 有 → 可能要集成。",[320,803,804,807],{},[15,805,806],{},"人工搬数据吗？"," 搬 → 该集成。",[320,809,810,813],{},[15,811,812],{},"数据需要同步吗？"," 需要 → 集成。",[320,815,816,819],{},[15,817,818],{},"集成 ROI 划算吗？","（省的人力 > 投入）划算 → 做。",[20,821,822],{"id":822},"怎么做",[401,824,825,828,831,834],{},[320,826,827],{},"梳理要对接的系统 + 数据流。",[320,829,830],{},"确认各系统 API。",[320,832,833],{},"开发对接。",[320,835,836],{},"测试 + 监控。",[419,838,839],{},[11,840,841],{},"广州市汉诺雷斯（HNREIS）提供系统集成（API 对接 ERP\u002F物流\u002F支付\u002FCRM），帮企业打通数据。把你的系统情况告诉我们，我们设计集成方案。",{"title":425,"searchDepth":426,"depth":426,"links":843},[844,845,846,847,851,856,857,858,859,860,861],{"id":499,"depth":426,"text":500},{"id":530,"depth":426,"text":530},{"id":539,"depth":426,"text":539},{"id":565,"depth":426,"text":565,"children":848},[849,850],{"id":568,"depth":432,"text":568},{"id":585,"depth":432,"text":585},{"id":607,"depth":426,"text":607,"children":852},[853,854,855],{"id":610,"depth":432,"text":611},{"id":628,"depth":432,"text":628},{"id":642,"depth":432,"text":642},{"id":650,"depth":426,"text":650},{"id":682,"depth":426,"text":682},{"id":715,"depth":426,"text":715},{"id":761,"depth":426,"text":761},{"id":790,"depth":426,"text":790},{"id":822,"depth":426,"text":822},"2024-05-15","老板常被 API、接口、集成这些技术词绕晕。本文用大白话讲清这些概念和企业集成场景，帮老板听懂技术沟通。",[865,868,871],{"q":866,"a":867},"API 到底是什么，大白话说？","API 是两个软件\"对话\"的通道。比如你的小程序要查物流，就通过物流公司的 API 问\"这个单号到哪了\"，物流系统通过 API 回\"已签收\"。API 让不同软件能互通数据，不用人工搬。你不用懂代码，只要知道\"API = 软件之间自动传数据的通道\"。",{"q":869,"a":870},"我们为什么要做接口集成？","因为你的多个系统要互通。比如独立站订单要进 ERP、库存要同步、物流要追踪，不集成就要人工把数据从一个系统搬到另一个（累、易错）。集成后数据自动流通，提效准确。系统越多，集成价值越大。",{"q":872,"a":873},"接口集成要多少钱？","看对接的系统数量和复杂度。对接一个系统（如 ERP）通常 1-3 万；多系统集成（ERP+物流+支付+CRM）3-8 万。集成能替代人工、提效避错，ROI 明确。",[875,876,877,878],"API接口通俗解释","什么是API","接口集成","系统对接",{},"\u002Fblog\u002Fcomparison\u002Fapi-jiekou-shiye",{"title":488,"description":863},{"loc":880},"blog\u002Fcomparison\u002Fapi-jiekou-shiye",[885,886,887],"API","概念","通俗","A7Jdt6jv4eTPYhdWviHOSLSzOR5pN0xxO_6QT9M2ODg",{"id":890,"title":891,"author":6,"body":892,"category":456,"cover":457,"date":1282,"description":1283,"draft":460,"extension":461,"faq":1284,"featured":460,"image":457,"keywords":1294,"meta":1299,"navigation":476,"path":1300,"seo":1301,"sitemap":1302,"stem":1303,"tags":1304,"updated":1282,"__hash__":1307},"blog\u002Fblog\u002Fcomparison\u002Fapi-wangguan-shi-shenme.md","API网关是什么",{"type":8,"value":893,"toc":1266},[894,901,904,907,910,920,923,926,932,936,950,954,968,972,986,990,1004,1008,1022,1026,1034,1037,1083,1086,1090,1093,1138,1163,1165,1191,1193,1230,1233,1235,1261],[11,895,896,897,900],{},"API 网关是系统架构里常见的组件，",[15,898,899],{},"通俗说就是系统的\"统一前台\"。"," 这篇讲清是什么、解决什么、要不要用。",[20,902,891],{"id":903},"api网关是什么",[11,905,906],{},"在微服务架构里，后端可能拆分成几十个甚至上百个服务。如果每个服务都直接对外提供接口，客户端要记住每个服务的地址、每个服务都要自己处理鉴权限流——这会非常混乱。API 网关就是解决这个问题的。",[11,908,909],{},"所有外部请求先到网关，网关统一处理后转发到后端：",[911,912,917],"pre",{"className":913,"code":915,"language":916},[914],"language-text","客户端 → API网关（鉴权\u002F限流\u002F监控）→ 后端服务\n","text",[918,919,915],"code",{"__ignoreMap":425},[11,921,922],{},"类比公司前台：访客（客户端请求）先到前台登记（鉴权\u002F限流），前台再引导到对应部门（转发到后端服务）。访客不用记每个部门在哪，部门也不用自己设前台。",[20,924,925],{"id":925},"网关做什么",[11,927,928,929,303],{},"API 网关的核心职责是",[15,930,931],{},"把各服务都要做的\"公共事\"统一收口",[103,933,935],{"id":934},"_1-统一入口","1. 统一入口",[317,937,938,944],{},[320,939,940,943],{},[15,941,942],{},"所有请求统一入口","：客户端只需要知道网关地址，不用记每个服务的地址。",[320,945,946,949],{},[15,947,948],{},"后端服务不直接暴露","：后端服务可以部署在内网，只把网关暴露在外网，安全风险降低。",[103,951,953],{"id":952},"_2-鉴权","2. 鉴权",[317,955,956,962],{},[320,957,958,961],{},[15,959,960],{},"统一身份验证","：所有请求的鉴权在网关统一做，比如验证 token、校验权限。",[320,963,964,967],{},[15,965,966],{},"后端不用各自鉴权","：后端服务可以信任网关已通过的请求，专注业务逻辑，不用重复写鉴权代码。",[103,969,971],{"id":970},"_3-限流","3. 限流",[317,973,974,980],{},[320,975,976,979],{},[15,977,978],{},"防止过载和恶意请求","：网关按规则限制每个客户端、每个接口的调用频率，防止恶意刷接口或突发流量压垮后端。",[320,981,982,985],{},[15,983,984],{},"保护后端","：流量超出后端承受能力时，网关可以拒绝或排队，保护后端不被打挂。",[103,987,989],{"id":988},"_4-路由转发","4. 路由转发",[317,991,992,998],{},[320,993,994,997],{},[15,995,996],{},"请求转发到对应服务","：网关根据请求路径、头部等信息，把请求转发到正确的后端服务。",[320,999,1000,1003],{},[15,1001,1002],{},"负载均衡","：一个服务有多个实例时，网关把请求分发到不同实例，提升整体处理能力。",[103,1005,1007],{"id":1006},"_5-监控日志","5. 监控日志",[317,1009,1010,1016],{},[320,1011,1012,1015],{},[15,1013,1014],{},"统一监控和日志","：所有请求的调用量、响应时间、错误率在网关统一采集，不用每个服务各自做。",[320,1017,1018,1021],{},[15,1019,1020],{},"可观测性","：网关的监控数据是排查问题、优化性能的重要依据。",[103,1023,1025],{"id":1024},"_6-协议转换","6. 协议转换",[317,1027,1028],{},[320,1029,1030,1033],{},[15,1031,1032],{},"不同协议转换","：客户端用 HTTP，后端用 gRPC 或 Dubbo，网关可以做协议转换，让前后端用各自适合的协议。",[20,1035,1036],{"id":1036},"为什么用网关",[28,1038,1039,1049],{},[31,1040,1041],{},[34,1042,1043,1046],{},[37,1044,1045],{},"问题",[37,1047,1048],{},"网关解决",[50,1050,1051,1059,1067,1075],{},[34,1052,1053,1056],{},[55,1054,1055],{},"鉴权散在各服务",[55,1057,1058],{},"统一鉴权",[34,1060,1061,1064],{},[55,1062,1063],{},"服务直接暴露",[55,1065,1066],{},"统一入口保护",[34,1068,1069,1072],{},[55,1070,1071],{},"流量过载",[55,1073,1074],{},"限流",[34,1076,1077,1080],{},[55,1078,1079],{},"监控散",[55,1081,1082],{},"统一监控",[11,1084,1085],{},"不用网关的情况下，每个服务都要自己实现鉴权、限流、监控、日志，代码重复、维护成本高，还容易出不一致的问题。网关把这些公共能力收口，后端服务可以更专注业务。",[20,1087,1089],{"id":1088},"用-vs-不用","用 vs 不用",[11,1091,1092],{},"网关不是所有系统都需要，要看规模和复杂度。",[28,1094,1095,1105],{},[31,1096,1097],{},[34,1098,1099,1102],{},[37,1100,1101],{},"情况",[37,1103,1104],{},"建议",[50,1106,1107,1115,1123,1131],{},[34,1108,1109,1112],{},[55,1110,1111],{},"服务少\u002F简单",[55,1113,1114],{},"不一定需要",[34,1116,1117,1120],{},[55,1118,1119],{},"微服务\u002F服务多",[55,1121,1122],{},"价值大",[34,1124,1125,1128],{},[55,1126,1127],{},"开放API",[55,1129,1130],{},"需要",[34,1132,1133,1136],{},[55,1134,1135],{},"多端接入",[55,1137,1130],{},[317,1139,1140,1146,1152,1158],{},[320,1141,1142,1145],{},[15,1143,1144],{},"服务少、简单","：比如一个单体应用就两三个接口，上不上网关差别不大，反而增加复杂度。",[320,1147,1148,1151],{},[15,1149,1150],{},"微服务、服务多","：服务一多，没有网关统一管理会很痛苦，网关价值就体现出来了。",[320,1153,1154,1157],{},[15,1155,1156],{},"开放 API","：对外提供 API 的场景，网关几乎是必需品——鉴权、限流、文档、监控都要在网关层做。",[320,1159,1160,1162],{},[15,1161,1135],{},"：APP、小程序、Web、第三方多端接入，网关统一入口能简化接入复杂度。",[20,1164,312],{"id":312},[317,1166,1167,1173,1179,1185],{},[320,1168,1169,1172],{},[15,1170,1171],{},"简单系统上重网关","：就两三个服务的简单系统，非要上 Kong 或 APISIX 这种重网关，属于过度设计，增加运维负担。",[320,1174,1175,1178],{},[15,1176,1177],{},"自己从头开发","：网关是成熟领域，有很多开源和商业产品（Kong、APISIX、云厂商网关），自己从头开发既慢又容易出问题。",[320,1180,1181,1184],{},[15,1182,1183],{},"网关成单点","：网关挂了整个系统就访问不了，必须做高可用部署（多实例、负载均衡）。",[320,1186,1187,1190],{},[15,1188,1189],{},"鉴权还散在各服务","：上了网关但鉴权还在各服务自己做，等于没用上网关的核心价值。",[20,1192,346],{"id":346},[28,1194,1195,1207],{},[31,1196,1197],{},[34,1198,1199,1202,1204],{},[37,1200,1201],{},"方案",[37,1203,360],{},[37,1205,1206],{},"成本量级",[50,1208,1209,1220],{},[34,1210,1211,1214,1217],{},[55,1212,1213],{},"开源\u002F云网关",[55,1215,1216],{},"Kong\u002FAPISIX\u002F云厂商",[55,1218,1219],{},"低到中",[34,1221,1222,1225,1228],{},[55,1223,1224],{},"定制集成",[55,1226,1227],{},"和业务深度集成",[55,1229,94],{},[11,1231,1232],{},"主流网关产品（Kong、APISIX）开源免费，主要成本是部署运维。云厂商的网关服务（阿里云、腾讯云、AWS）按量计费，用量不大的话成本不高。自己定制集成成本中等，适合有特殊需求的场景。",[20,1234,284],{"id":284},[401,1236,1237,1243,1249,1255],{},[320,1238,1239,1242],{},[15,1240,1241],{},"评估服务数量和复杂度","：服务多、架构复杂才考虑网关。",[320,1244,1245,1248],{},[15,1246,1247],{},"简单系统不一定需要","：两三个服务的单体应用不用上网关。",[320,1250,1251,1254],{},[15,1252,1253],{},"微服务\u002F开放API用网关","：服务多、对外开放的场景，网关价值大。",[320,1256,1257,1260],{},[15,1258,1259],{},"优先成熟产品","：用 Kong、APISIX、云厂商网关，不要自己从头开发。",[419,1262,1263],{},[11,1264,1265],{},"广州市汉诺雷斯（HNREIS）帮企业做系统架构设计，含API网关选型和集成。把你的系统需求告诉我们，我们给出架构建议。",{"title":425,"searchDepth":426,"depth":426,"links":1267},[1268,1269,1277,1278,1279,1280,1281],{"id":903,"depth":426,"text":891},{"id":925,"depth":426,"text":925,"children":1270},[1271,1272,1273,1274,1275,1276],{"id":934,"depth":432,"text":935},{"id":952,"depth":432,"text":953},{"id":970,"depth":432,"text":971},{"id":988,"depth":432,"text":989},{"id":1006,"depth":432,"text":1007},{"id":1024,"depth":432,"text":1025},{"id":1036,"depth":426,"text":1036},{"id":1088,"depth":426,"text":1089},{"id":312,"depth":426,"text":312},{"id":346,"depth":426,"text":346},{"id":284,"depth":426,"text":284},"2024-05-28","API网关是系统的统一入口，负责转发、鉴权、限流和监控。本文用通俗方式讲清API网关是什么、解决什么问题、企业要不要用。",[1285,1288,1291],{"q":1286,"a":1287},"API网关是什么，简单说？","API网关是系统的\"统一前台\"——所有外部请求先到网关，网关再转发到后端服务。它统一处理鉴权、限流、监控、日志这些公共事，后端服务专注业务。类比公司前台，访客先到前台登记再进去。",{"q":1289,"a":1290},"企业一定要用API网关吗？","不一定。系统简单、服务少，不一定需要网关。服务多（微服务）、要统一鉴权限流监控、对外开放API、多端接入时，网关价值大。建议按规模和复杂度选，不要为用而用。",{"q":1292,"a":1293},"API网关要花多少钱？","看方式。用开源\u002F云网关产品（如Kong\u002FAPISIX\u002F云厂商网关）成本较低，按量或自建运维；定制集成成本中等。建议优先用成熟网关产品，而不是自己从头开发。",[1295,1296,1297,1298],"API网关","网关是什么","API管理","微服务网关",{},"\u002Fblog\u002Fcomparison\u002Fapi-wangguan-shi-shenme",{"title":891,"description":1283},{"loc":1300},"blog\u002Fcomparison\u002Fapi-wangguan-shi-shenme",[885,1305,1306],"网关","架构","CInYK4Or6VhknVKica8mjtvcuqr1CPVLRxjpJ0II3Fc",{"id":1309,"title":1310,"author":6,"body":1311,"category":456,"cover":457,"date":1651,"description":1652,"draft":460,"extension":461,"faq":1653,"featured":460,"image":457,"keywords":1663,"meta":1667,"navigation":476,"path":1668,"seo":1669,"sitemap":1670,"stem":1671,"tags":1672,"updated":1651,"__hash__":1673},"blog\u002Fblog\u002Fcomparison\u002Fbanben-kongzhi-git.md","代码版本控制（Git）是什么",{"type":8,"value":1312,"toc":1637},[1313,1320,1323,1327,1330,1336,1342,1348,1352,1356,1359,1369,1373,1376,1386,1390,1393,1407,1411,1421,1425,1495,1498,1501,1507,1513,1519,1525,1527,1545,1547,1550,1597,1600,1603,1629,1632],[11,1314,1315,1316,1319],{},"Git 是开发团队的必备工具，",[15,1317,1318],{},"通俗说是代码的\"时光机\"和\"协作台\"。"," 这篇讲清老板需要了解的。",[11,1321,1322],{},"软件开发是个高度协作的工作——几个甚至几十个开发同时改同一份代码，如果没有版本控制工具，光是\"谁改了什么\"\"怎么合并\"\"改坏了怎么回退\"这些问题就能让团队崩溃。Git 就是为了解决这些问题而生的工具，它已经成为软件开发行业的标准配置。这篇用通俗方式讲清 Git 是什么、为什么开发要用、老板需要关心什么。",[20,1324,1326],{"id":1325},"git是什么","Git是什么",[11,1328,1329],{},"Git 是代码版本控制工具，核心做三件事：",[11,1331,1332,1335],{},[15,1333,1334],{},"记录历史","——代码的每次改动都有记录（谁、什么时候、改了什么），能回到任何历史版本。相当于代码的\"时光机\"，改坏了随时回退。",[11,1337,1338,1341],{},[15,1339,1340],{},"多人协作","——多个开发同时改代码，Git 能自动合并、识别冲突。相当于代码的\"协作台\"，让团队并行开发而不互相踩踏。",[11,1343,1344,1347],{},[15,1345,1346],{},"分支","——从主线分出独立分支，在分支上做新功能，做完再合并回主线。相当于代码的\"平行宇宙\"，多个功能同时开发互不影响。",[20,1349,1351],{"id":1350},"为什么用git","为什么用Git",[103,1353,1355],{"id":1354},"_1-记录历史","1. 记录历史",[11,1357,1358],{},"代码的每一次改动（commit）都有完整记录——谁改的、什么时候改的、改了哪些文件、改了什么内容。这条记录链形成代码的完整历史。",[11,1360,1361,1364,1365,1368],{},[15,1362,1363],{},"改坏了能回退","——新功能改崩了，一条命令就能回到之前的稳定版本，不用从头再来。",[15,1366,1367],{},"知道谁改了什么","——出问题时能追溯到具体是哪次改动引入的 bug、谁改的，便于排查和复盘。历史记录还让代码审计、合规追溯成为可能——金融、医疗等强监管行业对代码变更有审计要求，Git 历史是天然的审计日志。",[103,1370,1372],{"id":1371},"_2-多人协作","2. 多人协作",[11,1374,1375],{},"没有版本控制时，多人改同一份代码要靠\"文件传来传去\"或\"共享文件夹\"，冲突频发、改动丢失、版本混乱。Git 让多人协作规范化——每个人在本地改，改完提交，Git 自动合并或识别冲突。",[11,1377,1378,1381,1382,1385],{},[15,1379,1380],{},"多人同时开发不冲突","——Git 的合并机制能自动合并不同部分的改动，相同部分的冲突会明确标出，让开发者手动解决。",[15,1383,1384],{},"合并代码规范","——通过 pull request（PR）或 merge request（MR）流程，代码合并前要经过 review（代码审查），保证质量。",[103,1387,1389],{"id":1388},"_3-分支","3. 分支",[11,1391,1392],{},"分支是 Git 的杀手级特性。从主线（main\u002Fmaster）分出独立分支，在分支上开发新功能，开发完成、测试通过后再合并回主线。",[11,1394,1395,1398,1399,1402,1403,1406],{},[15,1396,1397],{},"同时做多个功能","——开发 A 做支付功能、开发 B 做用户中心，两人各自在自己的分支上开发，互不影响。",[15,1400,1401],{},"互不影响","——某个功能开发中出了问题，不会污染主线，主线始终保持稳定。",[15,1404,1405],{},"测试稳定再合并","——功能在分支上开发测试，稳定后才合并到主线，主线始终是可发布的状态。",[103,1408,1410],{"id":1409},"_4-备份","4. 备份",[11,1412,1413,1416,1417,1420],{},[15,1414,1415],{},"代码在远程仓库备份","——本地代码 push 到远程仓库（GitHub、GitLab、Gitee），相当于异地备份。本地电脑坏了、丢了，代码还在远程仓库。",[15,1418,1419],{},"不怕丢","——多人协作时每个人都有一份完整副本，任何一份丢失都能从其他人恢复。",[20,1422,1424],{"id":1423},"git-vs-不用版本控制","Git vs 不用版本控制",[28,1426,1427,1440],{},[31,1428,1429],{},[34,1430,1431,1434,1437],{},[37,1432,1433],{},"维度",[37,1435,1436],{},"Git",[37,1438,1439],{},"不用",[50,1441,1442,1453,1464,1475,1484],{},[34,1443,1444,1447,1450],{},[55,1445,1446],{},"历史",[55,1448,1449],{},"完整记录",[55,1451,1452],{},"没有",[34,1454,1455,1458,1461],{},[55,1456,1457],{},"协作",[55,1459,1460],{},"规范",[55,1462,1463],{},"手动易冲突",[34,1465,1466,1469,1472],{},[55,1467,1468],{},"回退",[55,1470,1471],{},"能",[55,1473,1474],{},"不能",[34,1476,1477,1479,1482],{},[55,1478,1346],{},[55,1480,1481],{},"支持",[55,1483,1452],{},[34,1485,1486,1489,1492],{},[55,1487,1488],{},"专业性",[55,1490,1491],{},"行业标准",[55,1493,1494],{},"不规范",[11,1496,1497],{},"不用版本控制的开发方式现在已经很少见——连个人开发者都用 Git 管理代码。如果一个开发团队不用 Git，基本可以判断为不规范。",[20,1499,1500],{"id":1500},"老板要了解的",[11,1502,1503,1506],{},[15,1504,1505],{},"规范团队都用 Git","——这是判断开发团队专业性的基本标准。用 Git 意味着团队有规范的开发流程（分支管理、代码审查、持续集成），而不是各自为政。反映专业性。",[11,1508,1509,1512],{},[15,1510,1511],{},"代码资产","——Git 仓库是企业的重要数字资产。仓库里不只是当前代码，还有完整的开发历史、设计决策、问题修复过程。这些是企业知识资产的重要组成部分。",[11,1514,1515,1518],{},[15,1516,1517],{},"源码交付","——服务商交付源码时，Git 仓库（含完整版本记录）是重要资产。只有当前代码没有历史记录，等于丢了开发过程的上下文。规范的源码交付应该包含 Git 仓库。源码含完整版本记录。",[11,1520,1521,1524],{},[15,1522,1523],{},"协作规范","——多人开发有据可查——谁做了什么、什么时候做的、为什么这么做，都有记录。出问题能追溯，避免推诿。",[20,1526,312],{"id":312},[11,1528,1529,1532,1533,1536,1537,1540,1541,1544],{},[15,1530,1531],{},"不用版本控制","——不规范、易丢代码。现在几乎没团队这么做了，但仍有个别服务商交付\"散落的代码文件\"而不是 Git 仓库，要注意。",[15,1534,1535],{},"不提交远程","——只在本地用 Git，不 push 到远程仓库，电脑坏了代码全丢。规范的团队都有远程仓库。",[15,1538,1539],{},"不分分支","——所有改动直接在主线做，功能混在一起乱、出问题难回退。规范团队都有分支策略（如 Git Flow、GitHub Flow）。",[15,1542,1543],{},"不写提交说明","——每次提交不写说明或写\"update\"\"fix\"这种无意义内容，不知道改了什么。规范团队要求写有意义的提交说明。",[20,1546,346],{"id":346},[11,1548,1549],{},"Git 本身免费（开源），成本在团队规范使用：",[28,1551,1552,1563],{},[31,1553,1554],{},[34,1555,1556,1559,1561],{},[37,1557,1558],{},"方面",[37,1560,360],{},[37,1562,48],{},[50,1564,1565,1576,1587],{},[34,1566,1567,1570,1573],{},[55,1568,1569],{},"Git工具",[55,1571,1572],{},"开源免费",[55,1574,1575],{},"免费",[34,1577,1578,1581,1584],{},[55,1579,1580],{},"托管平台",[55,1582,1583],{},"GitHub\u002FGitLab等",[55,1585,1586],{},"免费\u002F订阅",[34,1588,1589,1592,1595],{},[55,1590,1591],{},"团队规范",[55,1593,1594],{},"培训使用",[55,1596,80],{},[11,1598,1599],{},"Git 工具完全免费。托管平台有免费档（GitHub 公开仓库免费、GitLab 免费版）和付费档（私有仓库、企业版），按团队规模每月几美元到几十美元。团队规范使用要培训，但 Git 已经是开发行业基础技能，招聘时默认会，培训成本很低。",[20,1601,1602],{"id":1602},"怎么确认团队规范",[401,1604,1605,1611,1617,1623],{},[320,1606,1607,1610],{},[15,1608,1609],{},"确认团队用 Git 管理代码","——这是基本标准。问\"代码在哪个仓库\"\"分支策略是什么\"能快速判断。",[320,1612,1613,1616],{},[15,1614,1615],{},"代码在远程仓库（备份）","——有远程托管（GitHub、GitLab、Gitee 或自建），不只本地。",[320,1618,1619,1622],{},[15,1620,1621],{},"有分支和提交记录","——查看仓库历史，有没有规范的分支、有意义的提交说明、代码审查记录。",[320,1624,1625,1628],{},[15,1626,1627],{},"源码交付含 Git 仓库","——服务商交付时应该交付 Git 仓库（含完整历史），不只是当前代码文件。",[11,1630,1631],{},"按这几点核对，能快速判断开发团队是否规范。规范的 Git 使用是专业开发的基本标志，也是代码资产安全的基本保障。",[419,1633,1634],{},[11,1635,1636],{},"广州市汉诺雷斯（HNREIS）用Git规范管理代码，源码完整交付（含版本记录）。把你的项目需求告诉我们，我们规范交付。",{"title":425,"searchDepth":426,"depth":426,"links":1638},[1639,1640,1646,1647,1648,1649,1650],{"id":1325,"depth":426,"text":1326},{"id":1350,"depth":426,"text":1351,"children":1641},[1642,1643,1644,1645],{"id":1354,"depth":432,"text":1355},{"id":1371,"depth":432,"text":1372},{"id":1388,"depth":432,"text":1389},{"id":1409,"depth":432,"text":1410},{"id":1423,"depth":426,"text":1424},{"id":1500,"depth":426,"text":1500},{"id":312,"depth":426,"text":312},{"id":346,"depth":426,"text":346},{"id":1602,"depth":426,"text":1602},"2024-06-06","Git是代码版本控制工具，记录历史、支持协作和分支。本文用通俗方式讲清Git是什么、为什么开发要用、老板要了解什么。",[1654,1657,1660],{"q":1655,"a":1656},"Git是什么，简单说？","Git是代码版本控制工具，通俗说是代码的\"时光机\"和\"协作台\"——记录每次改动的历史（能回到任何版本）、多人同时改不冲突、支持分支（同时做多个功能）。开发团队用Git管理代码是行业标准。",{"q":1658,"a":1659},"老板为什么要了解Git？","Git关系到代码资产管理和交付。用Git意味着代码有完整历史、多人协作规范、源码可交付（有完整版本记录）。规范的开发团队都用Git，这反映团队专业性。源码交付时Git仓库是重要资产。",{"q":1661,"a":1662},"不用Git会怎样？","不用版本控制，代码改动没记录（改坏了回不去）、多人协作靠手动合并（易冲突丢代码）、没有分支（难同时做多功能）。现在专业开发都用Git，不用版本控制是不规范的表现。",[1436,1664,1665,1666],"版本控制","代码管理","代码版本",{},"\u002Fblog\u002Fcomparison\u002Fbanben-kongzhi-git",{"title":1310,"description":1652},{"loc":1668},"blog\u002Fcomparison\u002Fbanben-kongzhi-git",[1436,1664,42],"DDOY-P0lE1QLrLUQlE8ZQ8GpIAjcQnAG0lviW8QNo_I",{"id":1675,"title":1676,"author":6,"body":1677,"category":456,"cover":457,"date":2038,"description":2039,"draft":460,"extension":461,"faq":2040,"featured":460,"image":457,"keywords":2050,"meta":2053,"navigation":476,"path":2054,"seo":2055,"sitemap":2056,"stem":2057,"tags":2058,"updated":2038,"__hash__":2060},"blog\u002Fblog\u002Fcomparison\u002Fbendibu-vs-yunduan.md","本地部署和云部署的区别",{"type":8,"value":1678,"toc":2019},[1679,1686,1689,1693,1774,1776,1779,1781,1801,1803,1823,1825,1828,1830,1856,1858,1878,1880,1884,1895,1898,1909,1911,1919,1921,1947,1949,1995,1997,2014],[11,1680,1681,1682,1685],{},"软件部署在自己机房（本地）还是云上？",[15,1683,1684],{},"两者数据位置、成本、运维、弹性不同。"," 这篇讲清区别和选择。",[11,1687,1688],{},"很多企业在做信息化决策时，第一道选择题就是\"上云还是私有化部署\"。这件事看起来只是技术选型，实际上牵涉到数据归属、合规边界、运维投入、长期成本以及未来扩展性。如果一开始选错方向，后期再迁移会付出很大代价——数据迁移、接口改造、业务中断、人员重新培训。所以我们建议在动手之前，把两种方式的本质差异理清楚，再结合自身的数据敏感度、规模和运维能力做选择。",[20,1690,1692],{"id":1691},"本地部署-vs-云部署","本地部署 vs 云部署",[28,1694,1695,1707],{},[31,1696,1697],{},[34,1698,1699,1701,1704],{},[37,1700,1433],{},[37,1702,1703],{},"本地部署",[37,1705,1706],{},"云部署",[50,1708,1709,1720,1730,1741,1752,1763],{},[34,1710,1711,1714,1717],{},[55,1712,1713],{},"数据位置",[55,1715,1716],{},"自己机房",[55,1718,1719],{},"云厂商",[34,1721,1722,1725,1727],{},[55,1723,1724],{},"可控性",[55,1726,66],{},[55,1728,1729],{},"依赖云厂商",[34,1731,1732,1735,1738],{},[55,1733,1734],{},"初期成本",[55,1736,1737],{},"高（买服务器）",[55,1739,1740],{},"低（按需付费）",[34,1742,1743,1746,1749],{},[55,1744,1745],{},"运维",[55,1747,1748],{},"自己负责",[55,1750,1751],{},"云厂商负责部分",[34,1753,1754,1757,1760],{},[55,1755,1756],{},"弹性",[55,1758,1759],{},"难（要买硬件）",[55,1761,1762],{},"强（随时扩容）",[34,1764,1765,1768,1771],{},[55,1766,1767],{},"上线速度",[55,1769,1770],{},"慢",[55,1772,1773],{},"快",[20,1775,1703],{"id":1703},[11,1777,1778],{},"本地部署也叫私有化部署，是把软件连同数据库完整安装在客户自己机房的服务器上，所有数据从产生、存储到流转都在客户自己的硬件和网络环境里。云厂商或其他第三方无法直接访问到这些数据。",[103,1780,111],{"id":111},[317,1782,1783,1789,1795],{},[320,1784,1785,1788],{},[15,1786,1787],{},"数据自主","：数据完全在自己机房，物理上和网络上都可控，敏感行业（金融、政务、医疗、能源、核心商业数据）的合规要求通常通过本地部署满足。",[320,1790,1791,1794],{},[15,1792,1793],{},"完全可控","：不依赖云厂商，不会因为云厂商故障、停服、政策调整影响业务；网络策略、访问权限、加密方式都可以按自己的标准来制定。",[320,1796,1797,1800],{},[15,1798,1799],{},"长期固定成本","：初期一次性投入后，主要成本是电费、机房和运维人员工资，规模上来之后单位成本会被摊薄，长期运营相对划算。",[103,1802,129],{"id":129},[317,1804,1805,1811,1817],{},[320,1806,1807,1810],{},[15,1808,1809],{},"初期贵","：要买服务器、存储、网络设备，还要准备机房或机柜、UPS、空调、带宽等配套，光硬件投入就是几万到几十万，再加上软件授权和实施，初期门槛较高。",[320,1812,1813,1816],{},[15,1814,1815],{},"要运维","：硬件会坏、系统要打补丁、网络要排查、备份要做、安全要防护，需要专门的运维人员，小企业养一支运维团队成本不低。",[320,1818,1819,1822],{},[15,1820,1821],{},"弹性差","：业务量突然上涨，本地机房很难快速扩容——采购周期、上架、配置都要时间；业务量下降，已买的硬件也退不掉，资源闲置。",[20,1824,1706],{"id":1706},[11,1826,1827],{},"云部署是把软件部署在云厂商提供的服务器上（阿里云、腾讯云、华为云、AWS 等），按使用量付费。硬件、机房、网络、基础安全都由云厂商负责，客户只关注应用本身。",[103,1829,111],{"id":166},[317,1831,1832,1838,1844,1850],{},[320,1833,1834,1837],{},[15,1835,1836],{},"初期便宜","：按需付费，不用一次性买服务器，一台云主机从几十元到几百元每月起步，小企业或初创项目几乎零门槛。",[320,1839,1840,1843],{},[15,1841,1842],{},"省运维","：云厂商负责硬件、网络、机房、基础安全，客户只需要关注应用配置和数据，运维压力大幅下降，小团队也能跑稳生产环境。",[320,1845,1846,1849],{},[15,1847,1848],{},"弹性强","：业务高峰可以临时扩容（加机器、加带宽、加存储），低谷再缩容，按实际用量结算，特别适合季节性、活动型、流量波动大的业务。",[320,1851,1852,1855],{},[15,1853,1854],{},"上线快","：开通云主机几分钟，配合容器化部署可以做到当天开服、当天上线，对快速验证、敏捷迭代非常友好。",[103,1857,129],{"id":184},[317,1859,1860,1866,1872],{},[320,1861,1862,1865],{},[15,1863,1864],{},"数据在云","：数据物理上存在云厂商机房，依赖云厂商的安全能力和商业稳定性，敏感行业和强合规场景需要谨慎评估。",[320,1867,1868,1871],{},[15,1869,1870],{},"持续付费","：云资源按月或按年计费，长期累积下来可能比一次性买硬件更贵，规模越大、运行越久越明显。",[320,1873,1874,1877],{},[15,1875,1876],{},"合规限制","：部分行业（金融、政务、医疗、关键信息基础设施）的数据不允许上公有云，或只能上指定云、政务云、行业云。",[20,1879,284],{"id":284},[103,1881,1883],{"id":1882},"选本地私有化","选本地（私有化）",[317,1885,1886,1889,1892],{},[320,1887,1888],{},"数据高度敏感，比如金融交易、政务数据、医疗档案、核心商业数据、客户隐私。",[320,1890,1891],{},"要完全自主可控，对外部依赖、对供应商锁定特别敏感。",[320,1893,1894],{},"规模大、长期固定负载，本地部署的总账算下来比持续上云更划算。",[103,1896,1897],{"id":1897},"选云",[317,1899,1900,1903,1906],{},[320,1901,1902],{},"数据不敏感，或合规允许上云，希望轻装上阵。",[320,1904,1905],{},"业务有明显弹性，需要快速扩容、缩容，或处于快速验证阶段。",[320,1907,1908],{},"中小规模，没有专业的运维团队，希望把硬件和网络都外包出去。",[103,1910,306],{"id":306},[317,1912,1913,1916],{},[320,1914,1915],{},"敏感数据放本地（如核心交易、客户隐私），一般业务上云（如官网、营销、内部办公）。",[320,1917,1918],{},"通过专线、VPN、API 网关打通，做到\"敏感在内、弹性在外\"，是很多中大型企业的主流选择。",[20,1920,312],{"id":312},[317,1922,1923,1929,1935,1941],{},[320,1924,1925,1928],{},[15,1926,1927],{},"敏感数据上云","：忽视合规要求把不该上云的数据放公有云，可能面临监管处罚、整改甚至停业。",[320,1930,1931,1934],{},[15,1932,1933],{},"小规模本地部署","：业务量不大却硬上私有化，硬件折旧和运维成本根本摊不开，反而比上云贵。",[320,1936,1937,1940],{},[15,1938,1939],{},"只比单价不算总账","：云单价便宜不等于长期便宜，本地初期贵不等于长期贵，要按 3 年、5 年总成本（TCO）来算。",[320,1942,1943,1946],{},[15,1944,1945],{},"忽视云持续费用","：带宽、存储、CDN、增值服务都会按月累计，业务量起来后账单会快速上涨。",[20,1948,346],{"id":346},[28,1950,1951,1962],{},[31,1952,1953],{},[34,1954,1955,1957,1959],{},[37,1956,39],{},[37,1958,360],{},[37,1960,1961],{},"成本特点",[50,1963,1964,1975,1986],{},[34,1965,1966,1969,1972],{},[55,1967,1968],{},"本地",[55,1970,1971],{},"服务器+机房+运维",[55,1973,1974],{},"初期高，长期固定",[34,1976,1977,1980,1983],{},[55,1978,1979],{},"云",[55,1981,1982],{},"按需付费",[55,1984,1985],{},"初期低，持续",[34,1987,1988,1990,1993],{},[55,1989,306],{},[55,1991,1992],{},"敏感本地+一般云",[55,1994,94],{},[20,1996,284],{"id":396},[401,1998,1999,2002,2005,2008,2011],{},[320,2000,2001],{},"评估数据敏感度——是否涉及个人信息、重要数据、行业强合规。",[320,2003,2004],{},"评估规模和弹性需求——是稳定负载还是波动剧烈。",[320,2006,2007],{},"算总账（初期 + 长期 3-5 年），不只看月费。",[320,2009,2010],{},"评估运维能力——有没有专门的运维团队。",[320,2012,2013],{},"按需求选本地 \u002F 云 \u002F 混合，必要时分数据域分别部署。",[419,2015,2016],{},[11,2017,2018],{},"广州市汉诺雷斯（HNREIS）帮企业做部署方案，从云部署到本地私有化，按数据合规和成本需求选。把你的部署需求告诉我们，我们给出建议。",{"title":425,"searchDepth":426,"depth":426,"links":2020},[2021,2022,2026,2030,2035,2036,2037],{"id":1691,"depth":426,"text":1692},{"id":1703,"depth":426,"text":1703,"children":2023},[2024,2025],{"id":111,"depth":432,"text":111},{"id":129,"depth":432,"text":129},{"id":1706,"depth":426,"text":1706,"children":2027},[2028,2029],{"id":166,"depth":432,"text":111},{"id":184,"depth":432,"text":129},{"id":284,"depth":426,"text":284,"children":2031},[2032,2033,2034],{"id":1882,"depth":432,"text":1883},{"id":1897,"depth":432,"text":1897},{"id":306,"depth":432,"text":306},{"id":312,"depth":426,"text":312},{"id":346,"depth":426,"text":346},{"id":396,"depth":426,"text":284},"2024-06-18","软件可以部署在自己机房（本地）或云上，两者数据、成本、运维和弹性不同。本文讲清本地部署和云部署的区别和选择。",[2041,2044,2047],{"q":2042,"a":2043},"本地部署和云部署什么区别？","本地部署是软件装在自己机房的服务器上，数据在自己手里，可控但要自己买服务器和维护；云部署是装在云服务器上（阿里云\u002F腾讯云等），不用买服务器、弹性扩容、按需付费，但数据在云厂商。核心区别在数据位置和运维责任。",{"q":2045,"a":2046},"企业该选本地还是云？","看数据敏感度和需求。数据高度敏感、要完全自主（金融\u002F政务\u002F核心商业数据），选本地（私有化）；要弹性、省运维、快速上线，选云。很多企业混合——敏感本地、一般云。建议按数据合规和成本需求选。",{"q":2048,"a":2049},"本地部署比云贵吗？","看规模。本地部署要一次性买服务器（几万到几十万）+持续电费机房运维，初期贵但量大后固定；云部署按需付费，初期便宜但长期持续付费，量大可能累积贵。要算总账，不是简单比单价。",[1703,1706,2051,2052],"部署方式","私有化部署",{},"\u002Fblog\u002Fcomparison\u002Fbendibu-vs-yunduan",{"title":1676,"description":2039},{"loc":2054},"blog\u002Fcomparison\u002Fbendibu-vs-yunduan",[2059,1979,483],"部署","2aw6C_2og_Eq04KLDnHPhU-NwU6cTqAJMhy_gQJj7tc",1781688910018]