<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sparkler123的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Sparkler123</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Sparkler123]]></copyright><item><title><![CDATA[Express http-proxy-middleware 保存代理接口数据到本地]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/145344606</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/145344606</guid><author>Sparkler123</author><pubDate>Fri, 24 Jan 2025 17:47:31 +0800</pubDate><description><![CDATA[【代码】Express http-proxy-middleware 保存代理接口数据到本地。]]></description><category></category></item><item><title><![CDATA[vue elementUI el-form-item 封装]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/134884565</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/134884565</guid><author>Sparkler123</author><pubDate>Fri, 08 Dec 2023 17:56:49 +0800</pubDate><description><![CDATA[【代码】vue elementUI el-form-item 封装。]]></description><category></category></item><item><title><![CDATA[前端开发 Vscode 插件]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/126307932</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/126307932</guid><author>Sparkler123</author><pubDate>Fri, 12 Aug 2022 17:34:03 +0800</pubDate><description><![CDATA[前端开发 Vscode 插件]]></description><category></category></item><item><title><![CDATA[SpringBoot HelloWorld 项目创建]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/113481566</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/113481566</guid><author>Sparkler123</author><pubDate>Sun, 31 Jan 2021 17:18:16 +0800</pubDate><description><![CDATA[安装maven —— apache-maven-3.6.1
	
&lt;!-- config/settings.xml 添加配置 --&gt;
&lt;profile&gt;
   &lt;id&gt;jdk-1.8&lt;/id&gt;

   &lt;activation&gt;
     &lt;activeByDefault&gt;true&lt;/activeByDefault&gt;
     &lt;jdk&gt;1.4&lt;/jdk&gt;
   &lt;/activation&gt;
 ]]></description><category></category></item><item><title><![CDATA[react 服务端渲染项目相关配置（typescript + nextjs + koajs + log4js + crypto + jest）]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/111871024</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/111871024</guid><author>Sparkler123</author><pubDate>Mon, 28 Dec 2020 17:35:42 +0800</pubDate><description><![CDATA[这是一个基于脚手架create-next-app 的应用


// package.json

"scripts": {
    "dev": "node ./server.js",
    "build": "next build",
    "start": "next start",
    "test": "jest"
  },
  "dependencies": {
    "@zeit/next-css": "^1.0.1",
    "@zeit/next-less": "^1.0.1",
.]]></description><category></category></item><item><title><![CDATA[前端项目使用 mocker-api 来模拟数据]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/111180395</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/111180395</guid><author>Sparkler123</author><pubDate>Mon, 14 Dec 2020 17:31:26 +0800</pubDate><description><![CDATA[1. 安装依赖：npm i mocker-api -D

2. 在development模式对应的webpack配置下添加：


before(app, server) {
  // console.log('MOCK', process.env)
  if(process.env.MOCK) {
    // mocker-api
    apiMocker(app, path.resolve(__dirname, '../mock'))
  }
}

3. 添加对应的mock数据接口：


// moc]]></description><category></category></item><item><title><![CDATA[nodejs 换文件后缀（文件名）]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/108539412</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/108539412</guid><author>Sparkler123</author><pubDate>Fri, 11 Sep 2020 18:01:59 +0800</pubDate><description><![CDATA[如：将 homeTemplate 文件夹下的所有的less文件后缀替换为scss


var fs = require('fs');
var path = './homeTemplate';

function rename(filePath) {
  fs.readdir(filePath, function (err, files) {
    // files是名称数组
    files.forEach(function (filename) {
      //运用正则表达式替换oldPath中.]]></description><category></category></item><item><title><![CDATA[linux 查看日志笔录]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/108255828</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/108255828</guid><author>Sparkler123</author><pubDate>Thu, 27 Aug 2020 11:22:34 +0800</pubDate><description><![CDATA[1.查看日志常用命令

  cat：（tac是倒序查看，是cat单词反写；）

   -n 是显示行号；相当于nl命令；

     cat -n test.log |grep "info"  查询关键字info的日志

  tail: 

   -n 是显示行号；相当于nl命令；

   -f 实时监控

     tail -100f test.log   实时监控100行日志

      tail -n 1...]]></description><category></category></item><item><title><![CDATA[React Native 安装项目错误集锦]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/108021413</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/108021413</guid><author>Sparkler123</author><pubDate>Sat, 15 Aug 2020 13:52:37 +0800</pubDate><description><![CDATA[1. ReactNative pod install卡在boost-for-react-native

解决办法：在ios目录下Podfile文件中，头部加入以下代码，再pod install就可以下载下来了。


pod 'boost-for-react-native', :git =&gt; 'https://gitee.com/damon-s/boost-for-react-native.git’

2. 启动时报：java.lang.NoClassDefFoundError: Could not i]]></description><category></category></item><item><title><![CDATA[git 国外镜像下载慢的解决方案]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/107138048</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/107138048</guid><author>Sparkler123</author><pubDate>Sun, 05 Jul 2020 13:37:19 +0800</pubDate><description><![CDATA[git clone https://gitclone.com/github.com/xxx/yyy.git 加速clone。

比如：
threejs的github地址是：https://github.com/mrdoob/three.js.git
在终端里输入：git clone https://gitclone.com/github.com/mrdoob/three.js.git
]]></description><category></category></item><item><title><![CDATA[《可扩展的艺术》—— AKF拆分原则]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/106870582</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/106870582</guid><author>Sparkler123</author><pubDate>Sat, 20 Jun 2020 12:28:04 +0800</pubDate><description><![CDATA[对于一个规模迅速增长的系统而言，容量和性能问题当然是首当其冲。但是随着时间的向前，系统规模的增长，除了面对性能与容量的问题外， 还需要面对功能与模块数量上的增长带来的系统复杂性问题以及业务变化带来的差异化服务问题。
而许多系统，在架构设计时并没有充分考虑到这个问题，导致系统的重构成了常态，从而影响业务交付能力。
对此，《可扩展的艺术》一书提出了一个更加系统的可扩展模型——AKF可扩展立方(Scalability Cube)。这个立方体沿着三个坐标轴设置分别为：X（水平复制——集群）,Y（按服务功能拆分——.]]></description><category></category></item><item><title><![CDATA[Java 系统架构——MVC、RPC、SOA和微服务架构]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/106869992</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/106869992</guid><author>Sparkler123</author><pubDate>Sat, 20 Jun 2020 12:02:03 +0800</pubDate><description><![CDATA[Java 系统架构——MVC、RPC、SOA和微服务架构

MVC架构
定义： 其实MVC架构就是一个单体架构。
代表技术： Struts2、SpringMVC、Spring、Mybatis 等等



RPC架构
定义： RPC(Remote Procedure Call)：远程过程调用。它是一种通过网络从远程计算机程序上请求，而不需要了解底层网络技术的协议的服务。
代表技术： Thrift、Hessian 等等。



SOA架构
定义： SOA(Service Oriented Architectur]]></description><category></category></item><item><title><![CDATA[nodejs 性能测试 benchmark]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/106518397</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/106518397</guid><author>Sparkler123</author><pubDate>Wed, 03 Jun 2020 10:17:32 +0800</pubDate><description><![CDATA[server.js


var benchmark = require('benchmark');
var suite = new benchmark.Suite;

// 添加测试
suite.add('RegExp', function() {
	/o/.test('Hello World');
}).add('indexOf', function() {
	'Hello World'.indexOf('o');
}).on('cycle', function(e) {
	console.log(St.]]></description><category></category></item><item><title><![CDATA[常见排序算法与数据结构（Javascript版）]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105552847</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105552847</guid><author>Sparkler123</author><pubDate>Tue, 21 Apr 2020 16:49:02 +0800</pubDate><description><![CDATA[哈希表： hash 算法 +数组/链表

  解决 hash 冲突：
    1链地址法
    2开放地址法（空白元素偏移）
     （线性探测、二次方探测、再哈希法）

  hash 算法提升计算速度：霍纳法则/秦九韶算法

  数组元素使其分布均匀：常量使用质数


function hashFunc(str, size) {
    let ...]]></description><category></category></item><item><title><![CDATA[Linux Sed 指令]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105140385</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105140385</guid><author>Sparkler123</author><pubDate>Fri, 27 Mar 2020 14:42:01 +0800</pubDate><description><![CDATA[$ sed [参数选项] [脚本命令] 文件名


命令 功能
a\ 在当前行后添加一行或多行。多行时除最后一行外，每行末尾需用“\”续行
c\ 用此符号后的新文本替换当前行中的文本。多行时除最后一行外，每行末尾需用"\"续行
i\ 在当前行之前插入文本。多行时除最后一行外，每行末尾需用"\"续行
d  删除行
h  把模式空间里的内容复制到暂存缓冲区
H  把模式空间里的内容追加到...]]></description><category></category></item><item><title><![CDATA[Linux 查看系统信息常用命令]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105136025</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105136025</guid><author>Sparkler123</author><pubDate>Fri, 27 Mar 2020 13:44:12 +0800</pubDate><description><![CDATA[Linux 系统常用命令
	查看当前时间
			date
			
		查看当前日期（calendar）
			cal [-y]
			-y 显示一年
		显示磁盘空间（disk free）
			df [-h] [目录]
			-h 格式化显示，目录存在则显示目录所在磁盘信息
		显示文件夹大小（disk usage）
			du [-h] [目录]
			-h 格式化显示
		进程详情（pro...]]></description><category></category></item><item><title><![CDATA[Linux 用户、权限相关]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105124181</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105124181</guid><author>Sparkler123</author><pubDate>Thu, 26 Mar 2020 21:03:11 +0800</pubDate><description><![CDATA[文件、目录权限列表
	权限
			英文
			缩写
			数字代号
			修改权限
		读
			read
			r
			4
			chmod [+-]r filePath
		写
			write
			w
			2
			chmod [+-]w filePath
		执行
			execute
			x
			1
			chmod [+-]x filePath
		







...]]></description><category></category></item><item><title><![CDATA[SSH 常用技巧]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105123650</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105123650</guid><author>Sparkler123</author><pubDate>Thu, 26 Mar 2020 17:38:51 +0800</pubDate><description><![CDATA[生成 ssh-key:


&gt; ssh-keygen

上传ssh公钥到服务器：


&gt; ssh-copy-id [-p 22] username@hostname

设置 ssh 连接别名：


//file: ~/.ssh/config
Host Server_Alis
  HostName localhost
  User root
  Port 22

// example:...]]></description><category></category></item><item><title><![CDATA[Mongodb 常用命令]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/105079930</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/105079930</guid><author>Sparkler123</author><pubDate>Tue, 24 Mar 2020 20:10:22 +0800</pubDate><description><![CDATA[以数据库(articledb), 集合(comment)为例：


]]></description><category></category></item><item><title><![CDATA[nginx 学习笔记]]></title><link>https://blog.youkuaiyun.com/Sparkler123/article/details/104973820</link><guid>https://blog.youkuaiyun.com/Sparkler123/article/details/104973820</guid><author>Sparkler123</author><pubDate>Sat, 21 Mar 2020 14:42:15 +0800</pubDate><description><![CDATA[nginx 的组成部分：

二进制可执行文件：由各模块源码编译出的一个文件，提供功能；
	nginx.conf 配置文件：控制 nginx 的行为；
	access.log 访问日志：记录每一条 http 请求 / 响应信息；
	error.log 错误日志：定位问题。

...]]></description><category></category></item></channel></rss>