<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[萝卜]]></title><description><![CDATA[淡泊以明志，宁静以致远]]></description><link>https://blog.youkuaiyun.com/userrefister</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; userrefister]]></copyright><item><title><![CDATA[Ribbon 七种负载均衡策略详解：原理、源码与选型实践]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/168954972</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/168954972</guid><author>userrefister</author><pubDate>Sat, 24 Oct 2026 09:41:03 +0800</pubDate><description><![CDATA[针对某个服务单独配置ribbon:# 连接超时与读取超时# 重试次数实现，重写choose方法即可。continue;// 从实例元数据中读取版本标记@Override// 可在此读取自定义配置Ribbon 的七种负载均衡策略本质上是在「简单」与「智能」之间做取舍：轮询与随机最简单，响应时间加权与最小并发更贴近真实负载，可用性过滤与区域感知则进一步考虑了故障与拓扑。]]></description><category></category></item><item><title><![CDATA[解决 These dependencies were not found: * core-js/modules/es6.array.fill in xxx 之类的问题]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/121788119</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/121788119</guid><author>userrefister</author><pubDate>Wed, 08 Dec 2021 12:02:24 +0800</pubDate><description><![CDATA[解决方法：
在babel.config.js中添加：
presets: [ [ “@vue/app”, { useBuiltIns: “entry” } ] ]
简单解决

]]></description><category></category></item><item><title><![CDATA[OMS和ERP、WMS、TMS之间的关系]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/121290347</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/121290347</guid><author>userrefister</author><pubDate>Fri, 12 Nov 2021 16:14:57 +0800</pubDate><description><![CDATA[OMS=订单管理系统，WMS=仓库管理系统，TMS=运输管理系统。ERP系统广义上是可以包括前三者的，可能由于题主公司对这三个系统要求高，需要精细化管理，所以独立出来。

企业信息系统无非管理三个要素：人、财、物。对于这三个系统，只要抓住物这条主线就能理清楚。

猜测完整流程是：ERP发起建立商品的采购或销售订单，商品订单信息至WMS做出库入库，商品信息至TMS做运输管理。

中间某个流程和第三方有交互，根据题主信息（WMS，TMS之间有OMS做转接），所以应该是采购销售订单的生成和运输过程，有第三方参与进]]></description><category></category></item><item><title><![CDATA[Redis对于过期键有三种清除策略]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/110299600</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/110299600</guid><author>userrefister</author><pubDate>Sun, 29 Nov 2020 02:16:55 +0800</pubDate><description><![CDATA[Redis对于过期键有三种清除策略：
持久化策略(内存到磁盘上)：RDB(全部选中的数据进行全量备份)、AOF日志记录修改指令(增量备份针对上一次选中的数据)两种方案
内存淘汰策略：noeviction–默认策略，不删除数据    allkeys-lru–所有key中，删除最近最少使用的数据  volatile-lru–设置过期时间的所有key中，选取最近最少使用的数据删除  volatile-random–在所有key中，随机删除设置过期时间key的数据   volatile-ttl–设置过期时间key中]]></description><category></category></item><item><title><![CDATA[Bean实体类中Date属性格式化 @JsonFormat @DateTimeFormat]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/110299326</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/110299326</guid><author>userrefister</author><pubDate>Sun, 29 Nov 2020 01:54:49 +0800</pubDate><description><![CDATA[mysql 数据库中是datetime类型，java对象中用Date接收，传给前台时，想要格式化一下
在实体类的属性上使用注解：
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = “yyyy-MM-dd HH:mm:ss”, timezone = “GMT+8”)
@DateTimeFormat(pattern = “yyyy-MM-dd HH:mm:ss”)
shape: 表示序列化后的一种数据类型
pattern: 表示最终日期的格式
time]]></description><category></category></item><item><title><![CDATA[redis6.0.9配置文件详解]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/109482275</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/109482275</guid><author>userrefister</author><pubDate>Wed, 04 Nov 2020 00:32:55 +0800</pubDate><description><![CDATA[redis配置文件使用被分成了几大块区域（✘未了解，✔了解）：
INCLUDES  包含          ✔
MODULES 模块             ✘
NETWORK 网络          ✔
TLS/SSL   TLS/SSL安全协议     ✘
GENERAL 通用       ✘
SNAPSHOTTING 快照          ✔
REPLICATION 复制            ✔
KEYS TRACKING  keys追踪     ✘
SECURITY  密码授权设置       ]]></description><category></category></item><item><title><![CDATA[npm编译出问题]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/95473185</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/95473185</guid><author>userrefister</author><pubDate>Thu, 11 Jul 2019 14:01:56 +0800</pubDate><description><![CDATA[配置好webstorm的node和npm环境，打开terminal控制台后
cmd进入项目文件夹，输入 vue init webpack  将package.json中丢失的：
“dev”: “webpack-dev-server --inline --progress --config build/webpack.dev.conf.js”,
“start”: “npm run dev”,
“bu...]]></description><category></category></item><item><title><![CDATA[JVM里，new出来的对象是在哪个区？]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/89632836</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/89632836</guid><author>userrefister</author><pubDate>Sun, 28 Apr 2019 10:22:58 +0800</pubDate><description><![CDATA[new创建对象，对象保存在堆还是栈？
–&gt;堆内存是用来存放由new创建的对象和数组，即动态申请的内存都存放在堆内存
–&gt;栈内存是用来存放在函数中定义的一些基本类型的变量和对象的引用变量
例子：局部变量存放在栈；new函数和malloc函数申请的内存在堆；函数调用参数，函数返回值，函数返回地址存放在栈
堆和栈的区别
1、栈区（stack）—   由编译器自动分配释放   ，存放函数的参数...]]></description><category></category></item><item><title><![CDATA[VueJS笔记基础篇]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/80637406</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/80637406</guid><author>userrefister</author><pubDate>Sat, 09 Jun 2018 23:21:34 +0800</pubDate><description><![CDATA[&amp;amp;lt;script src=&amp;quot;https://cdn.bootcss.com/vue/2.2.2/vue.min.js&amp;quot;&amp;amp;gt;&amp;amp;lt;/script&amp;amp;gt;

$ cnpm install vue



&amp;amp;lt;!DOCTYPE html&amp;amp;gt;
&amp;amp;lt;html&amp;amp;gt;
    &amp;amp;lt;head&amp;amp;gt;
  ]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（十二）Web框架]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79350222</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79350222</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 23:25:42 +0800</pubDate><description><![CDATA[安装：位于node_modules 目录



D:\NodeJs&amp;gt;cnpm install express --save
√ Installed 1 packages
√ Linked 46 latest versions
√ Run 0 scripts
Recently updated (since 2018-02-15): 4 packages (detail see file D:\...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（十一）异常]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349972</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349972</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 22:25:09 +0800</pubDate><description><![CDATA[异常处理有三种:try—-catch结构、回调函数、EventEmitter接口的error事件。




// 引入 events 模块
var events = require('events');

// 创建 eventEmitter 对象
var eventEmitter = new events.EventEmitter();


// 创建事件处理程序
var connectHand...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（十）核心模块]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349894</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349894</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 22:08:58 +0800</pubDate><description><![CDATA[清单：



http：提供HTTP服务器功能。
url：解析URL。
fs：与文件系统交互。
querystring：解析URL的查询字符串。
child_process：新建子进程。
util：提供一系列实用小工具。
path：处理文件路径。
crypto：提供加密和解密功能，基本上是对OpenSSL的包装。


自定义模块：



//test.js
module.exports = fun...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（九）全局对象、全局变量]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349845</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349845</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 21:59:51 +0800</pubDate><description><![CDATA[一、全局对象：所有模块都可以调用的 
1、global：表示Node所在的全局环境，类似于浏览器的window对象。

2、process：该对象表示Node所处的当前进程，允许开发者与该进程互动。

3、console：指向Node内置的console模块，提供命令行环境中的标准输入、标准输出功能。

二、全局函数: 
1、定时器函数：共有4个，分别是setTimeout(), clearTim...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（八）路由功能]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349780</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349780</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 21:46:28 +0800</pubDate><description><![CDATA[// 加载所需模块
var http = require('http');
var url = require('url');
var fs = require('fs');

var host = '127.0.0.1';
var port = 8888;

http.createServer(function(req,res){
    var pathname = url.parse(req...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（七）业务模块调用]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349668</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349668</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 21:24:58 +0800</pubDate><description><![CDATA[1、eg:写了一个main.js 要去调用 event.js  



var test = require('/event'); //当前是在同一级目录下
test.start();//event.js 对象级方法 function

exports.start = function() {
     console.log('调用我的方法');
}

2、函数:nodejs跟javascrip...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（六）缓冲流]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349534</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349534</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 21:00:57 +0800</pubDate><description><![CDATA[var fs = require('fs');
//链式流引入
var zlib = require('zlib');


fs.createReadStream('1.txt').pipe(zlib.createGzip())

                   .pipe(fs.createWriteStream('1.txt.gz'));

console.log('文件压缩成功~~~~...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（五）Buffer]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79349143</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79349143</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 19:30:59 +0800</pubDate><description><![CDATA[1、使用node.js需要使用到IO数据操作,而作为以JavaScript底层库的编写的js库只用字符串数据类型，没有二进制数据类型,只能使用Bbuffer来创建实例。




//有数据就涉及到编码
const buf = Buffer.from('pengcq', 'utf8');
// 输出 70656e676371
console.log(buf.toString('hex'));

//...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（四）事件循环、事件驱动]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/79348922</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/79348922</guid><author>userrefister</author><pubDate>Thu, 22 Feb 2018 18:19:58 +0800</pubDate><description><![CDATA[1、Node.js 是单进程单线程应用程序，但是通过事件和回调支持并发，所以性能非常高。 
2、Node.js 的每一个 API 都是异步的，并作为一个独立线程运行，使用异步函数调用，并处理并发。 
3、Node.js 基本上所有的事件机制都是用设计模式中观察者模式实现。 
4、Node.js 单线程类似进入一个while(true)的事件循环，直到没有事件观察者退出，每个异步事件都生成一个事件观...]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（三）之回调函数]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/77853460</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/77853460</guid><author>userrefister</author><pubDate>Tue, 05 Sep 2017 16:56:29 +0800</pubDate><description><![CDATA[1、Node.js 异步编程的直接体现就是回调Node 使用了大量的回调函数，对于IO读取完成后，作为回调函数的参数返回，在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能，可以处理大量的并发请求。就如第一nodejs案例。var http = require('http');
http.createServer(function(request,response]]></description><category></category></item><item><title><![CDATA[跟我学NodeJS（二）交互式解释器]]></title><link>https://blog.youkuaiyun.com/userrefister/article/details/77853134</link><guid>https://blog.youkuaiyun.com/userrefister/article/details/77853134</guid><author>userrefister</author><pubDate>Tue, 05 Sep 2017 16:35:00 +0800</pubDate><description><![CDATA[1、新版的nodejs已经集成了npm，NPM是随同NodeJS一起安装的包管理工具，npm的作用就是对Node.js依赖的包进行管理，也可以理解为用来安装/卸载Node.js需要装的东西



e:\HTML5&amp;gt;npm -v
3.10.10

2、使用 npm 命令安装模块，安装最常用的express模块



npm install express -g     # -g是全局安装的意思...]]></description><category></category></item></channel></rss>