<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>织织</title><link>https://www.zhizhi123.com/blog/</link><description>Java、AI Agent、本地 AI 与独立产品实践</description><language>zh-CN</language><item><title>AI 时代创业最容易被忽略的一步：大多数人死在验证前</title><link>https://www.zhizhi123.com/blog/2026/06/09/ai-startup-validation-before-mvp/</link><guid>https://www.zhizhi123.com/blog/2026/06/09/ai-startup-validation-before-mvp/</guid><pubDate>Tue, 09 Jun 2026 13:00:00 GMT</pubDate><description>最近在 Anthropic 官方博客读了一份 AI 时代的创业指南，叫 《The Founder&apos;s Playbook: Building an AI-Native Startup》，其中的很多观点读起来让人如梦初醒。 AI 让「做出来」变得前所未有的容易 2026 年，AI 已经可以写生产级代码、</description></item><item><title>从「氛围编程」到「智能体工程」：Andrej Karpathy 论AI时代的编程革命</title><link>https://www.zhizhi123.com/blog/2026/06/01/vibe-to-agentic/</link><guid>https://www.zhizhi123.com/blog/2026/06/01/vibe-to-agentic/</guid><pubDate>Mon, 01 Jun 2026 00:46:03 GMT</pubDate><description>导语： 在最近的一次深度访谈中，AI教父级人物Andrej Karpathy分享了他从“Vibe Coding”（氛围编程）到“Agentic Engineering”（智能体工程）的深度思考。对于每一位开发者和创业者来说，这不仅是一次技术革命，更需要一次认知的范式转移。而在访谈最后，对于“当人工智</description></item><item><title>极简 prompt 分享：获取每日 AI 新闻</title><link>https://www.zhizhi123.com/blog/2026/06/01/daily-ai-news/</link><guid>https://www.zhizhi123.com/blog/2026/06/01/daily-ai-news/</guid><pubDate>Mon, 01 Jun 2026 00:46:00 GMT</pubDate><description>因为自身对AI的新闻比较关注，再加上又特别反感很多公众号的骇人的标题和夸张的描述，所以就自己搞了一个【AI每日新闻】这样的定时推送。每次看完后，会大致整理下，然后发到公众号和朋友圈，希望是对关注AI的朋友们也有一些价值。 但是最近发现，这种借助于龙虾|爱马仕等AI agent生成的内容会被腾讯直接判</description></item><item><title>Vibe coding 加持，耗时 3 周，我手搓了一个个人知识库</title><link>https://www.zhizhi123.com/blog/2026/05/21/vibe-coding-kb/</link><guid>https://www.zhizhi123.com/blog/2026/05/21/vibe-coding-kb/</guid><pubDate>Thu, 21 May 2026 12:34:36 GMT</pubDate><description>说实话，我很讨厌这类的标题。因为在震惊之余，我好像得不到更多有价值的信息。当然，我还是屈从了现实，因为大多数读者都喜欢。 废话少说，我用业余时间开发了一个个人知识库的产品 AskMe。如果你有一台 Mac M系列芯片电脑，你可以尝试安装一下。 🔒 极致的隐私控制 如果你配置了 ollama 作为本</description></item><item><title>AI 已至，人类的冰与火之歌</title><link>https://www.zhizhi123.com/blog/2026/05/15/ai-fire-ice/</link><guid>https://www.zhizhi123.com/blog/2026/05/15/ai-fire-ice/</guid><pubDate>Fri, 15 May 2026 04:44:40 GMT</pubDate><description>最近几年，随着chatgpt的横空出世、deepseek一鸣惊人，manus出现、龙虾的火爆，AI带给人类的冲击超出一切想象。无论是编辑、设计师还是程序员都不可避免地受其影响，被AI替代的声音此起彼伏。无论大小公司，一波波的裁员接踵而至。 AI就像《冰与火之歌》上的魔法，它不仅带来了异鬼，还带来了法</description></item><item><title>字节龙虾-我在火山引擎养龙虾</title><link>https://www.zhizhi123.com/blog/2026/04/01/lobster-volcano/</link><guid>https://www.zhizhi123.com/blog/2026/04/01/lobster-volcano/</guid><pubDate>Wed, 01 Apr 2026 12:31:12 GMT</pubDate><description>从年初至今，养龙虾🦞从极客圈火速蔓延到各行各业，大家仿佛陷入了一种养虾焦虑，仿佛不养虾就会被世界抛弃。各大厂也都顺势推出了自己的龙虾产品，一时间真是百虾大战，好不热闹。 作为一个相对谨慎且贫穷的选手，我没敢在自己的办公或主力电脑上安装，也没有买mac mini或云服务器。我选择了一种稍微复杂但安全</description></item><item><title>春节狂欢：机器人表演大放异彩，是花拳绣腿还是真功夫</title><link>https://www.zhizhi123.com/blog/2026/03/26/cny-robot/</link><guid>https://www.zhizhi123.com/blog/2026/03/26/cny-robot/</guid><pubDate>Thu, 26 Mar 2026 04:01:13 GMT</pubDate><description>文 / AI小荷尖角 · 智能的物理真相 系列④ 一、春晚舞台：从“伴舞”到“主角”，宇树科技的飞跃 2026 年央视春晚，最震撼的瞬间并非来自人类舞者，而是来自一群机器人。在节目《武bot》中，宇树科技（Unitree Robotics）的 G1/H2 人形机器人集体亮相，上演了一场精彩的武术秀。</description></item><item><title>能源危机——当 AI 的「胃口」逼近文明极限</title><link>https://www.zhizhi123.com/blog/2026/03/10/ai-energy-crisis/</link><guid>https://www.zhizhi123.com/blog/2026/03/10/ai-energy-crisis/</guid><pubDate>Tue, 10 Mar 2026 13:06:25 GMT</pubDate><description>文 / AI小荷尖角 · 智能的物理真相 系列③ “你必须知道物理定律的边界，才能真正拓展人类的可能性。”——卡尔·萨根 一、AI的能源危机：从GPT-4到国家电网级消耗 自2023年生成式AI爆发以来，AI对能源的消耗已进入指数级狂飙阶段，其胃口之大，足以吞噬一座中型城市。 表格 | 项目 | 能</description></item><item><title>单位体积智能对比：芯片 VS 人脑，谁更聪明？</title><link>https://www.zhizhi123.com/blog/2026/02/14/chip-vs-brain/</link><guid>https://www.zhizhi123.com/blog/2026/02/14/chip-vs-brain/</guid><pubDate>Sat, 14 Feb 2026 02:33:36 GMT</pubDate><description>文 / AI小荷尖角 · 智能的物理真相 系列② 芯片技术的发展，是一次次空间压缩的革命——在方寸之间，塞入尽可能多的“决策单元”。 一、硅的进化：从平面晶体管到3D原子级迷宫 ▶ 起点：真空管 vs. 晶体管 —— 体积相差百万倍 1940年代，早期电子计算机依赖真空管（Vacuum Tube）作</description></item><item><title>AI 真的拥有智能么？——从图灵测试到意识鸿沟</title><link>https://www.zhizhi123.com/blog/2026/02/05/ai-turing-abyss/</link><guid>https://www.zhizhi123.com/blog/2026/02/05/ai-turing-abyss/</guid><pubDate>Thu, 05 Feb 2026 13:18:19 GMT</pubDate><description>文 / AI小荷尖角 · 智能的物理真相 系列① 当千问写出一首关于“孤独”的十四行诗，当豆包能耐心向10岁孩子解释量子纠缠，当Sora生成一段以假乱真的巴黎街景视频……我们不禁要问： AI，真的拥有智能吗？ 它看起来如此聪明、流畅，甚至富有“同理心”。但剥开这层语言的外衣，里面究竟是一个正在觉醒的</description></item><item><title>java基础：内存屏障</title><link>https://www.zhizhi123.com/blog/2021/11/14/memory-barrier/</link><guid>https://www.zhizhi123.com/blog/2021/11/14/memory-barrier/</guid><pubDate>Sun, 14 Nov 2021 00:00:00 GMT</pubDate><description>内存屏障（Memory Barrier）概述 内存屏障（Memory Barrier），也叫做 内存栅栏（Memory Fence），是现代计算机体系结构中的一种机制，用于控制指令执行的顺序，以确保在多核处理器环境中，多个线程或处理器对共享内存的操作能够按照特定的顺序进行。 在并发编程中，尤其是在多</description></item><item><title>spring：声明式事务源码</title><link>https://www.zhizhi123.com/blog/2021/11/07/spring-transaction-core-implementation/</link><guid>https://www.zhizhi123.com/blog/2021/11/07/spring-transaction-core-implementation/</guid><pubDate>Sun, 07 Nov 2021 00:00:00 GMT</pubDate><description>本文主要介绍spring事务（JDBC单数据库事务管理）的核心源码实现 1、核心类介绍 我们可以先看一下核心类图。 PlatformTransactionManager 底层接口，定义事务方法 AbstractPlatformTransactionManager 抽象类，实现PlatformTran</description></item><item><title>JVM：G1 GC流程</title><link>https://www.zhizhi123.com/blog/2021/10/04/gc-g1-process/</link><guid>https://www.zhizhi123.com/blog/2021/10/04/gc-g1-process/</guid><pubDate>Mon, 04 Oct 2021 00:00:00 GMT</pubDate><description>1、简介 G1全称Garbage First，是垃圾收集器发展历史上里程碑式的成果，它开创了收集器面向局部收集的设计思路和基于Region的内存布局形式。 作为CMS收集器的替代者，设计者希望做出一款支持&quot;停顿预测模型&quot;(Pause Predictioin Model)的收集器。在G1收集器出现之前</description></item><item><title>JVM：CMS GC流程</title><link>https://www.zhizhi123.com/blog/2021/10/02/gc-cms-process/</link><guid>https://www.zhizhi123.com/blog/2021/10/02/gc-cms-process/</guid><pubDate>Sat, 02 Oct 2021 00:00:00 GMT</pubDate><description>CMS全名叫做Concurrent Mark Sweep，是一种以获取最短回收停顿时间为目标的收集器。在G1之前，大部分互联网网站或者基于浏览器的B/S系统的java服务器会采用CMS作为老年代垃圾收集器。 CMS垃圾收集基于标记-清除算法实现，整个过程分为四个步骤，包括： 1）初始标记 标记GC </description></item><item><title>ES：底层实现-倒排索引</title><link>https://www.zhizhi123.com/blog/2021/09/24/inverted-index/</link><guid>https://www.zhizhi123.com/blog/2021/09/24/inverted-index/</guid><pubDate>Fri, 24 Sep 2021 00:00:00 GMT</pubDate><description>倒排索引（Inverted Index）是 Elasticsearch 及其他全文搜索引擎的核心数据结构，用于高效地进行全文检索。它将文档中的内容映射到文档的位置，类似于书中词表索引，可以快速找到某个词在哪些章节中出现过。 倒排索引&amp;正排索引 倒排：即词项=&gt;包含当前词项的docid的列表的映射。倒</description></item><item><title>高并发程序设计(二)：多进程并发模型</title><link>https://www.zhizhi123.com/blog/2021/03/04/high-concurrency-2/</link><guid>https://www.zhizhi123.com/blog/2021/03/04/high-concurrency-2/</guid><pubDate>Thu, 04 Mar 2021 00:00:00 GMT</pubDate><description>本篇为高并发程序设计系列第二篇，主要内容为： 多进程并发模型 一：模型简介 “进程是操作系统提供的最古老的也是最重要的抽象概念之一。即使可以利用的CPU只有一个，但它们也支持并发操作的能力。它们将一个单独的CPU变换成多个虚拟的CPU。没有进程的抽象，现代计算将不复存在。” 摘录来自: Andrew</description></item><item><title>高并发程序设计(一)：基本概念</title><link>https://www.zhizhi123.com/blog/2021/02/24/high-concurrency-1/</link><guid>https://www.zhizhi123.com/blog/2021/02/24/high-concurrency-1/</guid><pubDate>Wed, 24 Feb 2021 00:00:00 GMT</pubDate><description>本篇为高并发程序设计系列第一篇，主要内容为： 1. 高并发程序设计相关概念 2. 高并发与高吞吐率讨论 一：基本概念 1.并发与并行 并发（concurrency）: 逻辑上具备同时处理多个任务的能力 并行（parallesim）： 物理上在同一时刻执行多个并发任务 我们通常会说程序是并发设计的，也</description></item><item><title>bilibili注册中心Discovery架构设计与源码分析</title><link>https://www.zhizhi123.com/blog/2021/01/11/service-registry-discovery/</link><guid>https://www.zhizhi123.com/blog/2021/01/11/service-registry-discovery/</guid><pubDate>Mon, 11 Jan 2021 00:00:00 GMT</pubDate><description>什么是注册中心 注册中心可以说是 一个“通讯录”，它记录了服务和服务地址的映射关系。在服务启动时，服务会注册到这里，当服务需要调用其它服务时，就到这里找到服务的地址，进行调用。 常见的注册中心及对比 业界有许多成熟的注册中心实现，下图中对一些常见的注册中心做一对比： ZooKeeper是一款经典的服</description></item><item><title>【译】gRPC名称解析</title><link>https://www.zhizhi123.com/blog/2020/12/10/grpc-name-resolution/</link><guid>https://www.zhizhi123.com/blog/2020/12/10/grpc-name-resolution/</guid><pubDate>Thu, 10 Dec 2020 00:00:00 GMT</pubDate><description>原文:gRPC Name Resolution 翻译整理: 本站 译文链接:【译】gRPC名称解析。 转载请保留原文出处和译文译者和出处。 概览 gRPC支持将DNS作为默认名称系统。 在各种部署中使用了许多其他类型的名称系统。 我们支持足够通用的API，以支持各种名称系统和名称的相应语法。 各种</description></item><item><title>unix常见信号梳理</title><link>https://www.zhizhi123.com/blog/2020/12/10/unix-common-signal/</link><guid>https://www.zhizhi123.com/blog/2020/12/10/unix-common-signal/</guid><pubDate>Thu, 10 Dec 2020 00:00:00 GMT</pubDate><description>一：信号概念 在计算机科学中，信号（英语：Signals）是Unix、类Unix以及其他POSIX兼容的操作系统中进程间通讯的一种有限制的方式。它是一种异步的通知机制，用来提醒进程一个事件已经发生。当一个信号发送给一个进程，操作系统中断了进程正常的控制流程，此时，任何非原子操作都将被中断。如果进程定</description></item><item><title>【译】控制终端概念</title><link>https://www.zhizhi123.com/blog/2020/11/11/libc-concepts-of-job-control/</link><guid>https://www.zhizhi123.com/blog/2020/11/11/libc-concepts-of-job-control/</guid><pubDate>Wed, 11 Nov 2020 00:00:00 GMT</pubDate><description>原文:Concepts of Job Control 来源： The GNU C Library Reference Manual, for version 2.32. Copyright © 1993–2020 Free Software Foundation, Inc. 翻译整理: 本站 译文</description></item><item><title>【译】gRPC负载均衡(gRPC博客)</title><link>https://www.zhizhi123.com/blog/2020/09/15/grpc-load-balancing/</link><guid>https://www.zhizhi123.com/blog/2020/09/15/grpc-load-balancing/</guid><pubDate>Tue, 15 Sep 2020 00:00:00 GMT</pubDate><description>原文:Load Balancing in gRPC June 15, 2017 makdharma, Google 翻译整理: 本站 译文链接:【译】gRPC负载均衡。 转载请保留原文出处和译文译者和出处。 这篇文章描述了在部署gRPC时看到的各种负载平衡场景。如果您使用具有多个后端的gRPC，则</description></item><item><title>【译】gRPC负载均衡</title><link>https://www.zhizhi123.com/blog/2020/09/14/load-balancing-in-grpc/</link><guid>https://www.zhizhi123.com/blog/2020/09/14/load-balancing-in-grpc/</guid><pubDate>Mon, 14 Sep 2020 00:00:00 GMT</pubDate><description>原文:Load Balancing in gRPC 翻译整理: 本站 译文链接:【译】gRPC负载均衡。 转载请保留原文出处和译文译者和出处。 范围 这篇文档解释了gRPC中的负载均衡设计 背景 基于每次调用的负载均衡 值得注意的是，gRPC中的负载平衡是基于每个调用，而不是基于每个连接。换句话说</description></item><item><title>apue习题9.2</title><link>https://www.zhizhi123.com/blog/2020/08/31/apue-exercise-9_2/</link><guid>https://www.zhizhi123.com/blog/2020/08/31/apue-exercise-9_2/</guid><pubDate>Mon, 31 Aug 2020 00:00:00 GMT</pubDate><description>UNIX环境高级编程第九章有如下一道习题 9.2 编写一段程序调用fork并使子进程建立一个新的会话。验证子进程变成了进程组组长且不再有控制终端。 下边给出博主的解答，仅供参考。</description></item><item><title>微服务那些事儿</title><link>https://www.zhizhi123.com/blog/2019/03/27/microservice-things/</link><guid>https://www.zhizhi123.com/blog/2019/03/27/microservice-things/</guid><pubDate>Wed, 27 Mar 2019 00:53:58 GMT</pubDate><description>1.什么是微服务？ 微服务 (Microservices) 是一种软件架构风格，它是以专注于单一责任与功能的小型功能区块 (Small Building Blocks) 为基础，利用模组化的方式组合出复杂的大型应用程序，各功能区块使用与语言无关 (Language-Independent/Langu</description></item><item><title>PHP对象与数组互相转换</title><link>https://www.zhizhi123.com/blog/2016/12/03/php-objects-convert-to-and-from-arrays/</link><guid>https://www.zhizhi123.com/blog/2016/12/03/php-objects-convert-to-and-from-arrays/</guid><pubDate>Sat, 03 Dec 2016 14:39:01 GMT</pubDate><description>工作中不可避免会遇到php对象与数组的相互转化，下边对其方法做了简单的总结。 1.强制转化 arr = (array) ​obj; obj = (object) ​arr; 优点：比较简洁 缺点：不能递归转化 适用范围：无嵌套数组，无嵌套类的转化 2.自定义方法 object2array ，arra</description></item><item><title>在vim中强制保存正在编辑的文件（即使当前没有写权限）</title><link>https://www.zhizhi123.com/blog/2016/11/25/vim-force-to-save-in/</link><guid>https://www.zhizhi123.com/blog/2016/11/25/vim-force-to-save-in/</guid><pubDate>Fri, 25 Nov 2016 14:31:08 GMT</pubDate><description>​ linux操作环境中，我们经常会碰上这种情况：以普通用户vim编辑一个文件，改了许多地方后，发现无权限保存。命令&quot;:w !sudo tee %&quot;可以很好滴解决这个问题。 下面我们简单分析一下 ​ &quot;:w !sudo tee %&quot;这条命令的含义是把当前编辑的文件的内容当做标准输入输入到命令sudo</description></item><item><title>wordpress博客遇到的那些坑（二）谷歌字体</title><link>https://www.zhizhi123.com/blog/2016/10/23/wordpress-pit-2/</link><guid>https://www.zhizhi123.com/blog/2016/10/23/wordpress-pit-2/</guid><pubDate>Sun, 23 Oct 2016 04:00:09 GMT</pubDate><description>​ 如果你发现登录Wordpress异常缓慢，经常卡在fonts.googleapis.com，这是由于Wordpress加载了谷歌字体（代码位置在wordpress\\wp-includes\\script-loader.php第708行,我的版本是WordPress 4.4.2），而谷歌服务器大</description></item><item><title>wordpress博客遇到的那些坑（一）xmlrpc漏洞</title><link>https://www.zhizhi123.com/blog/2016/10/19/wordpress-pit-1/</link><guid>https://www.zhizhi123.com/blog/2016/10/19/wordpress-pit-1/</guid><pubDate>Wed, 19 Oct 2016 13:51:13 GMT</pubDate><description>​ 十一假期结束之后，发现自己的博客不时出现数据库连接失败，经检查是mysql停止运行了。之前出现过这样的情况，但是没有那么频繁，于是就写了一个检查mysql进程的脚本，如果mysql进程停止了，就自动启动mysql进程。但是这次的问题是，mysql刚一重启，没过多久就又挂了。 ​ 由于之前问题没这</description></item><item><title>在VIM中进行文本替换</title><link>https://www.zhizhi123.com/blog/2016/07/06/vim-string-replace/</link><guid>https://www.zhizhi123.com/blog/2016/07/06/vim-string-replace/</guid><pubDate>Wed, 06 Jul 2016 14:53:13 GMT</pubDate><description>1.替换当前行中的内容： :s/from/to/ （s即substitude） :s/from/to/ ： 将当前行中的第一个from，替换成to。如果当前行含有多个 from，则只会替换其中的第一个。 :s/from/to/g ： 将当前行中的所有from都替换成to。 :s/from/to/gc</description></item><item><title>vim中使用正则表达式</title><link>https://www.zhizhi123.com/blog/2016/07/02/vim-use-regular/</link><guid>https://www.zhizhi123.com/blog/2016/07/02/vim-use-regular/</guid><pubDate>Sat, 02 Jul 2016 08:30:55 GMT</pubDate><description>一、使用正则表达式的命令 使用正则表达式的命令最常见的就是 / （搜索）命令。其格式如下： /正则表达式 另一个很有用的命令就是 :s（替换）命令，将第一个//之间的正则表达式替换成第二个//之间的字符串。 :s/正则表达式/替换字符串/选项 在学习正则表达式时可以利用 / 命令来练习。 二、元字符</description></item><item><title>批量删除mysql数据表</title><link>https://www.zhizhi123.com/blog/2016/06/18/mysql-batch-del/</link><guid>https://www.zhizhi123.com/blog/2016/06/18/mysql-batch-del/</guid><pubDate>Sat, 18 Jun 2016 09:27:06 GMT</pubDate><description>问题描述 ​ 工作中我们会遇到批量删除一些mysql数据表的情况，比如现在有100个带&apos;2012&apos;前缀的表，如何将其批量删除，it&apos;s a problem. 假设 数据库：test 表特征：&apos;2012&apos;前缀 mysql用户名：root mysql密码：passwd 解决方案 要点解析 1. 上述命令</description></item><item><title>vim多标签、多窗口操作</title><link>https://www.zhizhi123.com/blog/2016/05/21/vim-multiple-tabs-windows/</link><guid>https://www.zhizhi123.com/blog/2016/05/21/vim-multiple-tabs-windows/</guid><pubDate>Sat, 21 May 2016 07:00:04 GMT</pubDate><description>多标签 进入vim前 vim -p 以多标签形式打开文件。如vim -p 就是编辑当前目录的所有文件 vim编辑中 :tabnew 增加一个标签 :tabc 关闭当前的tab :tabo 关闭所有其他的tab :tabs 查看所有打开的tab :tabp 或gT 前一个 :tabn 或gt 后一个 </description></item><item><title>svn属性svn:keywords与auto-props的配置(转)</title><link>https://www.zhizhi123.com/blog/2016/05/07/svn-keywords-auto-props/</link><guid>https://www.zhizhi123.com/blog/2016/05/07/svn-keywords-auto-props/</guid><pubDate>Sat, 07 May 2016 00:52:58 GMT</pubDate><description>规范的代码在开头往往都有作者、修改日期、版本号、原始位置等信息。 大多数开发者都习惯自己手工维护这些信息。现在告诉你一个好消息是，通过设置svn关键字属性：svn:keywords可以实现此目的，你再也不用手工维护了，svn会自动帮你维护。如何实现呢？有两个途径： （一）用命令设置文件属性的方式 目</description></item><item><title>Centos下Yum安装PHP5.5,5.6,7.0(转)</title><link>https://www.zhizhi123.com/blog/2016/04/14/centos-yum-php5-php7/</link><guid>https://www.zhizhi123.com/blog/2016/04/14/centos-yum-php5-php7/</guid><pubDate>Thu, 14 Apr 2016 01:52:27 GMT</pubDate><description>默认的版本太低了，手动安装有一些麻烦，想采用Yum安装的可以使用下面的方案： 1.检查当前安装的PHP包 yum list installed | grep php 如果有安装的PHP包，先删除他们 yum remove php.x8664 php-cli.x8664 php-common.x866</description></item><item><title>MySQL中的insert ignore into, replace into等的一些用法总结(转载)</title><link>https://www.zhizhi123.com/blog/2016/04/01/mysql-insert-ignore-into-replace-into/</link><guid>https://www.zhizhi123.com/blog/2016/04/01/mysql-insert-ignore-into-replace-into/</guid><pubDate>Fri, 01 Apr 2016 02:46:25 GMT</pubDate><description>在MySQL中进行条件插入数据时，可能会用到以下语句，现小结一下。我们先建一个简单的表来作为测试： 1.insert ignore into 当插入数据时，如出现错误时，如重复数据，将不返回错误，只以警告形式返回。所以使用ignore请确保语句本身没有问题，否则也会被忽略掉。例如： 2.on dup</description></item><item><title>mongodb的write concern(转载)</title><link>https://www.zhizhi123.com/blog/2016/02/27/mongodb-write-concern/</link><guid>https://www.zhizhi123.com/blog/2016/02/27/mongodb-write-concern/</guid><pubDate>Sat, 27 Feb 2016 14:14:06 GMT</pubDate><description>mongodb有一个write concern的设置，作用是保障write operation的可靠性。一般是在client driver里设置的，和db.getLastError()方法关系很大 一般来说，所有的mongo driver，在执行一个写操作（insert、update、delete）</description></item><item><title>Linux下查找包含BOM头的文件和清除BOM头命令（转）</title><link>https://www.zhizhi123.com/blog/2016/01/23/linux-search-bom-file-rm-bom/</link><guid>https://www.zhizhi123.com/blog/2016/01/23/linux-search-bom-file-rm-bom/</guid><pubDate>Sat, 23 Jan 2016 05:29:18 GMT</pubDate><description>查找包含BOM头的文件，命令如下： 1. grep -r -I -l $&apos;^\\xEF\\xBB\\xBF&apos; ./ \\xef\\xbb\\xbf是UTF8 BOM的16进制表示 这个命令会把当前目录及所有子目录下的BOM头删除掉。 1. find . -type f -exec sed -i &apos;s</description></item><item><title>shell命令的常用快捷键(转)</title><link>https://www.zhizhi123.com/blog/2015/12/17/shell-shortcuts/</link><guid>https://www.zhizhi123.com/blog/2015/12/17/shell-shortcuts/</guid><pubDate>Thu, 17 Dec 2015 05:24:02 GMT</pubDate><description>ctrl + f 光标向后移动一个字符相当于VIM里l ctrl + b 光标向前移动一个字符相当于VIM里h Ctrl + a 切换到命令行开始 Ctrl + e 切换到命令行末尾 Ctrl + l 清除屏幕内容 Ctrl + u 清除光标之前的内容 Ctrl + k 清除光标之后的内容 Ctrl</description></item><item><title>union和union all的区别</title><link>https://www.zhizhi123.com/blog/2015/11/04/union-and-union-all/</link><guid>https://www.zhizhi123.com/blog/2015/11/04/union-and-union-all/</guid><pubDate>Wed, 04 Nov 2015 05:20:34 GMT</pubDate><description>Union因为要进行重复值扫描，所以效率低。如果合并没有刻意要删除重复行，那么就使用Union All 两个要联合的SQL语句 字段个数必须一样，而且字段类型要“相容”（一致）； 如果我们需要将两个select语句的结果作为一个整体显示出来，我们就需要用到union或者union all关键字。un</description></item><item><title>YaHoo  14条(Web 应用性能优化黄金法则)</title><link>https://www.zhizhi123.com/blog/2015/10/29/yahoo-14/</link><guid>https://www.zhizhi123.com/blog/2015/10/29/yahoo-14/</guid><pubDate>Thu, 29 Oct 2015 03:53:58 GMT</pubDate><description>Web 应用性能优化黄金法则：先优化前端程序 (front-end) 的性能，由于这是80% 或以上的最终用户响应时间的花费所在。javascript 法则1： 减小HTTP请求次数 80%的最终用户响应时间花在前端程序上，而其大部分时间则花在各类页面元素， 如图像、 样式表、 脚本和 Flash </description></item><item><title>读取设置memcache的值（优先支持memcached扩展和cas协议）</title><link>https://www.zhizhi123.com/blog/2015/09/19/php-memcached-cas/</link><guid>https://www.zhizhi123.com/blog/2015/09/19/php-memcached-cas/</guid><pubDate>Sat, 19 Sep 2015 09:05:12 GMT</pubDate><description>最近在项目中因为要防止并发，需要使用php的memcached扩展，memcached扩展支持cas协议，而memcache扩展却不支持。安装memcached过程中发现windows下并没有该扩展，为了保持代码的一致，就写了一个既支持memcached又支持memcache的类，这样就不用担心生产</description></item><item><title>允许远程用户登录访问mysql的方法</title><link>https://www.zhizhi123.com/blog/2015/09/19/mysql-remote-user-connect/</link><guid>https://www.zhizhi123.com/blog/2015/09/19/mysql-remote-user-connect/</guid><pubDate>Sat, 19 Sep 2015 02:35:13 GMT</pubDate><description>需要手动增加可以远程访问数据库的用户。 方法一: 本地登入mysql，更改 &quot;mysql&quot; 数据库里的 &quot;user&quot; 表里的 &quot;host&quot; 项，将&quot;localhost&quot;改为&quot;%&quot; \# mysql -u root -proot mysql&gt;use mysql; mysql&gt;update user s</description></item><item><title>PHP下载文件（隐藏真实的下载地址）</title><link>https://www.zhizhi123.com/blog/2015/08/31/php-download-hide-real-location/</link><guid>https://www.zhizhi123.com/blog/2015/08/31/php-download-hide-real-location/</guid><pubDate>Mon, 31 Aug 2015 12:40:24 GMT</pubDate><description>有时我们需要隐藏真实的文件下载地址，防止恶意下载，我们可以采用下面的方法（参考网络，侵权请告知） 以下为引用的内容： 而如果文件为远程文件，则原始码会有少许改动，程式如下： 以下为引用的内容： 这样就能用PHP直接输出文件了。</description></item><item><title>php投票小程序</title><link>https://www.zhizhi123.com/blog/2015/08/29/php-vote/</link><guid>https://www.zhizhi123.com/blog/2015/08/29/php-vote/</guid><pubDate>Sat, 29 Aug 2015 03:15:00 GMT</pubDate><description>之前帮朋友写的一个投票小程序。比较简单，大家慎用。很多投票系统会有针对IP的限制，下面的proxy是我在网上搜的免费的IP代理。url为投票的地址。data是需要发送的数据，这些可以根据具体情况更改。</description></item><item><title>PHP判断是否为手机访问</title><link>https://www.zhizhi123.com/blog/2015/08/29/php-is-from-mobile/</link><guid>https://www.zhizhi123.com/blog/2015/08/29/php-is-from-mobile/</guid><pubDate>Sat, 29 Aug 2015 02:00:32 GMT</pubDate><description>​有时候我们需要判断访问是来自手机端还是PC端，PHP可以很方便的进行判断。 $SERVER[&apos;HTTPUSERAGENT&apos;]中含有访问的头信息（header）,根据它我们可以做出判断 。 这个方法稍加改造也可以判断是否用某种浏览器打开。</description></item><item><title>centos系统为php安装memcached扩展步骤</title><link>https://www.zhizhi123.com/blog/2015/08/25/centos-php-memcached-extension-install/</link><guid>https://www.zhizhi123.com/blog/2015/08/25/centos-php-memcached-extension-install/</guid><pubDate>Tue, 25 Aug 2015 12:36:15 GMT</pubDate><description>这篇文章主要介绍了centos系统为php安装memcached扩展的步骤,大家参考使用吧 1.通过yum安装 yum -y install memcached \#安装完成后执行: memcached -h \#出现memcached帮助信息说明安装成功 2.加入启动服务 chkconfig --</description></item><item><title>CentOS配置163的yum源</title><link>https://www.zhizhi123.com/blog/2015/08/25/centos-yum-163-source/</link><guid>https://www.zhizhi123.com/blog/2015/08/25/centos-yum-163-source/</guid><pubDate>Tue, 25 Aug 2015 12:12:50 GMT</pubDate><description>CentOS系统自带的YUM源更新太慢，所以更新使用了163的YUM源 1. 下载repo文件 wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 2. 备份并替换系统的repo文件 \[root@localhost \]# cd /etc</description></item><item><title>linux下用phpize给PHP动态添加扩展</title><link>https://www.zhizhi123.com/blog/2015/08/25/linux-phpize/</link><guid>https://www.zhizhi123.com/blog/2015/08/25/linux-phpize/</guid><pubDate>Tue, 25 Aug 2015 01:15:44 GMT</pubDate><description>使用php的常见问题是：编译php时忘记添加某扩展，后来想添加扩展，但是因为安装php后又装了一些东西如PEAR等，不想删除目录重装，别说，php还真有这样的功能。 如我想增加bcmath支持，这是一个支持大整数计算的扩展。windows自带而且内置，linux“本类函数仅在 PHP 编译时配置了 </description></item><item><title>shell脚本删除特定时间的备份文件</title><link>https://www.zhizhi123.com/blog/2015/08/22/shell-rm-specific-date-bak/</link><guid>https://www.zhizhi123.com/blog/2015/08/22/shell-rm-specific-date-bak/</guid><pubDate>Sat, 22 Aug 2015 08:47:11 GMT</pubDate><description>在上篇关于shell脚本的博客中，我介绍了一种覆盖工作目录并自动备份已存在文件的方法（详见：https://www.zhizhi123.com/blog/2015/05/09/shell-copy-and-bak-dir/)。但用的次数多了之后，我们的工作目录可能会产生很多类似tagsbak2015-08-22的文件</description></item><item><title>简明 Vim 练级攻略（转载）</title><link>https://www.zhizhi123.com/blog/2015/08/15/vim-concise-training-strategy/</link><guid>https://www.zhizhi123.com/blog/2015/08/15/vim-concise-training-strategy/</guid><pubDate>Sat, 15 Aug 2015 11:19:20 GMT</pubDate><description>2011年9月7日陈皓 vim的学习曲线相当的大（参看各种文本编辑器的学习曲线），所以，如果你一开始看到的是一大堆VIM的命令分类，你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》，我觉得这是给新手最好的VIM的升级教程了，没有列举所有的命令，只是列</description></item><item><title>如何开启mysql的慢查询日志</title><link>https://www.zhizhi123.com/blog/2015/08/11/mysql-slow-query-log/</link><guid>https://www.zhizhi123.com/blog/2015/08/11/mysql-slow-query-log/</guid><pubDate>Tue, 11 Aug 2015 06:05:11 GMT</pubDate><description>Linux查看mysql 安装路径 一、查看文件安装路径 由于软件安装的地方不止一个地方，所有先说查看文件安装的所有路径(地址)。 这里以mysql为例。比如说我安装了mysql,但是不知道文件都安装在哪些地方、放在哪些文件夹里，可以用下面的命令查看所有的文件路径 在终端输入： whereis my</description></item><item><title> shell脚本复制文件夹内容到另外的文件夹，如果存在则自动备份</title><link>https://www.zhizhi123.com/blog/2015/05/09/shell-copy-and-bak-dir/</link><guid>https://www.zhizhi123.com/blog/2015/05/09/shell-copy-and-bak-dir/</guid><pubDate>Sat, 09 May 2015 04:39:33 GMT</pubDate><description>有时我们需要将一个文件夹覆盖到我们的工作目录，但需要自动备份已经存在的文件，一个一个去备份太麻烦了，全部备份又没有必要。shell脚本可以很好滴完成这个任务。代码如下：</description></item><item><title>[环境配置] Apache下htaccess使用技巧：301重定向、404错误等</title><link>https://www.zhizhi123.com/blog/2013/10/05/apache-htaccess-301-401/</link><guid>https://www.zhizhi123.com/blog/2013/10/05/apache-htaccess-301-401/</guid><pubDate>Sat, 05 Oct 2013 08:17:09 GMT</pubDate><description>换域名了，以前域名的收录怎么办？老域名的权重如何转移到新域名呢？百度搜索引擎优化手册里面说的是使用301永久重定向，那么如何灵活应用301重定向呢？下面就说说apache服务器下使用htaccess来实现301永久重定向的方法。 你是同一目录下的网站，还是不同目录下的网站，如果是同一目录下的网站，就</description></item><item><title>每一个有理想的程序员都应该读的一本书 -《rework》</title><link>https://www.zhizhi123.com/blog/2013/07/06/book-rework/</link><guid>https://www.zhizhi123.com/blog/2013/07/06/book-rework/</guid><pubDate>Sat, 06 Jul 2013 05:26:53 GMT</pubDate><description>作者: meng-meng(萌萌) 来源: 博客园 每一个程序员都有改变世界的梦想，他们不甘平凡，他们想要make a difference，他们想要创立世界上最cool的公司，那具体该如何做呢？风靡全球的《rework》将告诉你答案。 37signals是一家很特别的公司，他们有很独特的理念。虽然</description></item><item><title>Think Different！</title><link>https://www.zhizhi123.com/blog/2013/06/29/think-different/</link><guid>https://www.zhizhi123.com/blog/2013/06/29/think-different/</guid><pubDate>Sat, 29 Jun 2013 01:44:01 GMT</pubDate><description>向那些疯狂的家伙致敬， 他们我行我素， 桀骜不驯， 惹是生非， 就像方孔中的圆桩， 他们用不同的角度来看待事物， 他们既不墨守成规， 也不安于现状， 你尽可以赞美他们 否定他们， 引用他们， 质疑他们，颂扬抑或是诋毁他们， 但是唯独不能漠视他们 因为他们改变了事物 他们让人类向前跨越了一大步 他们是</description></item></channel></rss>