乐于分享
好东西不私藏

1年,从0到1,深耕AI Word领域:我们做了款WPS“平替”

1年,从0到1,深耕AI Word领域:我们做了款WPS“平替”

趣谈AI精选:《最系统的AI开发学习精品手册》

徐小夕
先上一个我们 AI Word 协同文档的最新成果:
这是一张带复杂表格的 Word 文档,解析到 JitWord 协同AI文档中的效果,基本上 1:1 还原。
回到主题,我们为什么要做WPS的平替产品
作为一名有近10年B端产品研发和设计经验的创业者,我接触过太多的企业,对办公文档软件有私有化,本地化部署的需求。
同时结合这两年AI发展的趋势,我把需求点总结为一句话:
“有数据安全和智能化需求的企业(政府,军工,金融,工业制造),普遍需要一款能在线编辑Word、支持多人实时协作、还能用AI辅助写公文的系统,要私有化本地部署。”

我花了一个月时间,调研了市面上所有主流方案:

  • WPS:功能强大,但私有化部署成本极高,二次开发几乎不可能

  • 开源方案(OnlyOffice/Luckysheet等):协同体验差,中文排版兼容性问题多,AI能力弱

  • 自研路线:前端要重做Word渲染引擎,后端要处理OT/CRDT协同算法,还要接大模型...

"既然没有现成的,那就自己造一个。" 就这样,JitWord 项目启动了。

话不多说,先上链接:

sdk使用:  https://github.com/jitOffice/jitword-sdk
体验地址:https://jitword.com

创业历程:3个架构师,365天,踩过的那些坑

第1-3个月:证明"这件事能做"

最开始团队只有3个人:我负责架构,一个前端 specialist,一个后端架构师,基本上在大厂都有丰富的研发经验。

我们第一个要攻克的问题是:如何在浏览器里精准还原Word文档

Word 的 docx 格式本质上是一组XML文件的ZIP包,里面涉及:

  • 段落样式(Styles)

  • 编号列表(Numbering)

  • 表格嵌套

  • 页眉页脚

  • 复杂格式(分栏、文本框、首字下沉...)

我们花了整整6周,写了一个可扩展的高精度 docx 解析引擎,能把复杂公文、标书、论文的排版还原度做到 95%以上。

具体实现方案我在之前的文章中有详细的介绍,大家可以参考一下:

一个普通Word文档,为什么99%的开源编辑器都"认怂"了?我们选择正面硬刚

比如对于红头公文,我们解析的效果如下:

还有一种更复杂的格式,标题有压缩字体,如下:

遇到这种场景,市面上 99.9% 的开源文档编辑器基本就“放弃治疗”了。我们最开始也打算忽略这种场景,但是后面实在压不住客户的压力,花了一个月时间,把这个问题攻克了,下面是我们解析这种 Word 文件的效果:
大家可以看到,基本上 99% 的还原度,这依赖于我们研发的字体解析渲染算法:
JitWord 从底层重新设计了排版引擎原生支持 GB/T 标点压缩、分散对齐、字符缩放、网格行距等专业排版特性,并实现了与 Word 格式的高保真双向互转。
第4-6个月:协同编辑 + 版本管理,从"能用"到"好用"

文档渲染搞定了,下一个硬骨头是多人实时协同

我们调研了两种技术路线:

  1. OT(Operational Transformation)算法:Google Docs在用,理论上比较成熟,但是实现相对复杂,冲突处理容易出现 bug

  2. CRDT(Conflict-free Replicated Data Type):去中心化方案,成本低,但性能开销大

最终我们选择了"改良型CRDT + 心跳同步"的混合方案:

  • 操作粒度细化到字符级

  • 引入版本向量解决并发冲突

  • 本地优先(Local-first)架构,弱网环境下也能流畅编辑

我总结了一下我们现在的协同实现方案的架构设计,大家可以参考一下:
对于冲突解决,其实设计到很多策略上册设计,我简单分享一下冲突策略的设计:
冲突类型
解决策略
说明
同位置插入
时间戳优先
较早的操作优先执行
同内容删除
幂等处理
重复删除操作被忽略
格式冲突
最后写入胜出
最后的格式设置生效
结构冲突
智能合并
基于语义的智能合并
在文档中,既然支持了协同编辑功能,一个“挥洒不去”的坑就是 版本管理能力。
在设计并实现文档的版本管理功能时,我们也花了大量的时间,下面就和大家分享一下我们的实现方案。
这里分享一个企业级的需求场景:
客户不仅需要能看到版本历史记录,还想看到不同版本的对比差异,并能一键回退。
没错,我们也遇到了这样的客户,对文档审计的要求很高,所以我们几乎花了1个月时间,来实现这一个功能,最后终于实现了版本差异对比能力:
上图可以看到,文档的每一个版本都能溯源,我们不仅知道是谁编辑的,还能看到编辑的差一点在哪。
这个功能其实在数据安全(内容审计)要求比较高的企业中,非常实用。
下面分享一下我们版本管理存储的数据结构:
{  "documentId""doc_123456",  "versions": [    {      "id""v_001",      "title""初始版本",      "description""文档创建",      "content": {...},      "author""user_001",      "isAutoSave"false,      "createdAt""2024-01-01T10:00:00Z",      "metadata": {        "wordCount"1500,        "characterCount"8000,        "changesSinceLastVersion"150      }    }  ]}
大家可以参考一下,至于版本管理的对比算法,我们采用了 Myers 差分算法 进行版本内容对比, 流程如下:
  1. 文本级对比
    基于字符和单词的精确差异识别
  2. 结构级对比
    识别段落、标题、列表等结构变化
  3. 样式级对比
    检测格式、颜色、字体等样式变化
  4. 组件级对比
    图表、表格等复杂组件的变化识别
大家如果想有一个更直观的感受,也可以直接线上体验我们的 JitWord 协同AI文档:
sdk使用:  https://github.com/jitOffice/jitword-sdk
体验地址:https://jitword.com

第7-9个月:AI能力不是"锦上添花",是"刚需"

做到这个阶段,JitWord 已经是一个"能用的在线Word"了。但后面我们的客户又问了一个灵魂拷问:

"你们和WPS的区别是什么?"

我们的答案是:AI原生

从底层架构设计上,我们遵循了 AI Native 的产品设计理念,预留了AI扩展点:

  • AI续写:基于上下文语义,一键生成公文段落

  • AI排版:自动识别文档类型(通知/报告/函件),应用对应模板

  • AI纠错:错别字、语法、政治用语规范检查

  • 公式解析:支 持LaTeX实时渲染,科研论文一键导出Word

同时,对于企业比较关注的合同和公文,我们也实现了专门的公文 Agent,可以给一个公文模版,AI 就能快速基于模版创作公文,如下:
JitWord 的AI不是简单调用AI模型 API,而是构建了"通用能力+垂直领域"的双层架构:
用户输入    ↓意图识别模型 (Intent Classifier) ──→ 公文/论文/标书/通用写作    ↓领域知识库检索 (RAG) ──→ 模板匹配 + 规范校验    ↓大模型生成 (LLM) ──→ 内容生成 + 润色优化    ↓后处理引擎 ──→ 格式标准化 + 排版美化
当然大家还能对AI能力进行进一步的扩展,实现更有价值,符合企业自身产品的AI能力。

第10-12个月:打磨"最后一公里"

最后三个月,我们死磕了如下难啃的“骨头”:

  • Office文件预览:支持将OFD,Docx,PDF,Excel等文件嵌入文档

  • 修订模式完整的"批注+修订+接受/拒绝"工作流,满足公文审签场景

  • 目录大纲可拖拽、可展开收起的智能目录,长文档导航效率提升10倍

  • 国产化适配兼容主流浏览器和国产服务器,全面支持信创环境

  • 附加价值:表格 + 思维导图 多人协同功能支持

下面我会一一介绍上面提到的几个核心能力。
Office文件预览
我们在 JitWord 编辑器的导入菜单中,可以看到我们支持导入的文件类型,有:Word,HTML,JSON,Markdown,Excel,OFD,PDF等。
 下面是一个导入 Excel 的案例:
审阅 & 修订模式
在 Word 功能中,我个人认为修订模式是最复杂的,需要记录编辑者的修改记录,并对内容的不同操作(增,删, 改)进行不同颜色的高亮编辑,同时还能接受“修订”或者取消“修订”,这个功能对文档API操作需要非常熟悉,并设计一套高效的方案。
好在,花了近一个月的时间,我们实现了这个功能:
更强大的是,我们支持把 Word 文档中的修订记录,一键解析到 JitWord 文档中,实现 Word 和 JitWord 的双向“互通”。
大家感兴趣的可以参考体验一下:
体验地址:https://jitword.com
可拖拽、可展开收起的目录大纲
这个功能可以帮我们快速定位到长文档的位置,同时可以高效的调整整块内容段落的位置。
比如我有一个1w字,200个段落的文章,传统的Word文档如果想调整章节的顺序,只能现定位到需要调整的段落,然后剪切,粘贴到指定位置。但是在JitWord 协同文档中,我们可以直接拖拽左侧的文档大纲目录,就可以轻松实现文档段落的自动调整位置。
国产化适配
最近两年国产化软件的趋势越来越明显,很多政企项目都需要支持国产信创环境,于是我们也花了大量的时间做国产环境适配和测试,目前测试下来我们在国产的华为鲲鹏服务器,奇安信,360等的最近几个版本的浏览器能正常使用。

当然我们还在持续迭代优化,打造更高精度,更可靠,更智能的AI协同文档系统,让个人和企业能更低成本将传统 Office “搬到”线上。

附加价值: 表格 + 思维导图的多人协同编辑能力

我们基于我们设计的协同编辑方案,又实现了在线 Excel 的协同编辑功能,最近也实现了思维导图的协同编辑,如下:

产品功能对比:JitWord vs WPS

我总结了一个对比表,供大家参考:

功能维度
WPS Office
JitWord
说明
在线协同
支持(需登录WPS账号)
支持(私有化部署,数据不出域)
JitWord支持完全内网部署
AI写作
WPS AI(会员功能)
AI公文助手/论文助手(内置)
JitWord针对中文办公场景深度优化
数学公式
公式编辑器
LaTeX实时渲染+Word导出
科研场景更友好
目录可拖拽调整
不支持
支持
目录和内容双向更新
修订模式
支持
完整支持(批注+修订+审签)
满足公文流转场景
二次开发
封闭生态
提供SDK/API
可嵌入任意业务系统
国产化适配
有信创版
支持(浏览器+服务器)
从芯片到操作系统全链路适配
部署成本
SaaS订阅/高价私有化
低成本私有化/源码授权
适合中小企业和政务客户

核心价值复盘

我从四个维度来分享一下 JitWord 对比 WPS 来说,体现的价值点:

1. 数据主权

  • WPS 的在线版数据存储在金山云

  • JitWord 支持完全私有化部署,数据留在客户服务器

2. 深度定制

  • WPS是封闭产品,无法二次开发

  • JitWord提供SDK+API,可嵌入OA、ERP、CRM等任意系统

3. 场景垂直

  • WPS 是通用办公工具

  • JitWord 深耕公文写作、科研论文、招投标文件、多人协作等垂直场景,AI能力更精准

4. 成本优势

  • WPS 企业版年费数千元起,长期使用成本压力非常大

  • JitWord 私有化部署成本


最后的感悟:我们不是要做"颠覆者",而是"补缺者"

做 JitWord 这一年,我最大的感悟是:

"大厂做不到的事,小公司有机会;大厂不愿做的事,小公司必须做。"

WPS 无疑是一款伟大的产品,20年积累,几亿用户,它的地位无可撼动。

但是, WPS 也有它的边界(优劣势):

  • 它要服务C端用户,所以必须有广告和会员

  • 它要维护通用性,所以无法深耕垂直场景

  • 它要保护商业利益,所以无法开放二次开发

JitWord的定位从来不是"打败WPS",而是做一个"WPS做不到/不愿做"的补充方案,服务于有成本预算,希望打造自己的AI办公产品的客户。

如果你的公司满足如下情况:

  • 是一家数据敏感的国企/金融机构

  • 是一个需要深度定制文档能力的SaaS厂商

  • 是一支预算有限但需求明确的中小团队

那么 JitWord 可能是你一直在找的答案。

我们会持续深耕 AI 办公领域,并打造用户体验更好,可持续,可私有化部署,更具性价比的 AI 办公协同软件。
往期精彩:
最系统的 AI 应用开发精品学习手册

JitKnow V2.0.0:从可视化知识库到企业级AI中台,开放API+数据分析重构知识管理边界

从一行代码到百万表格:花两年做的pxcharts,把表格做成"AI+低代码数据库"

JitWord,一款AI驱动的协同Word文档编辑器

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-30 12:50:20 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/671591.html
  2. 运行时间 : 0.117842s [ 吞吐率:8.49req/s ] 内存消耗:4,668.08kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=e402a652c2f63fbcdb818c5bd09bead1
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000451s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000708s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000329s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000231s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000522s ]
  6. SELECT * FROM `set` [ RunTime:0.000206s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000523s ]
  8. SELECT * FROM `article` WHERE `id` = 671591 LIMIT 1 [ RunTime:0.000542s ]
  9. UPDATE `article` SET `lasttime` = 1780116620 WHERE `id` = 671591 [ RunTime:0.003885s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000226s ]
  11. SELECT * FROM `article` WHERE `id` < 671591 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000426s ]
  12. SELECT * FROM `article` WHERE `id` > 671591 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000795s ]
  13. SELECT * FROM `article` WHERE `id` < 671591 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000636s ]
  14. SELECT * FROM `article` WHERE `id` < 671591 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000590s ]
  15. SELECT * FROM `article` WHERE `id` < 671591 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002321s ]
0.122503s