<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sooxin的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sooxin</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sooxin]]></copyright><item><title><![CDATA[tomcat在ubuntu上获取时区问题]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/141890222</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/141890222</guid><author>sooxin</author><pubDate>Wed, 04 Sep 2024 12:31:55 +0800</pubDate><description><![CDATA[catalina.sh 首行增加 export JAVA_OPTS="-Duser.timezone=Asia/Shanghai"]]></description><category></category></item><item><title><![CDATA[android studio 忽略已经被索引的文件output-metadata.json]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/139552994</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/139552994</guid><author>sooxin</author><pubDate>Sun, 09 Jun 2024 00:12:24 +0800</pubDate><description><![CDATA[output-metadata.json会被从changes列入到"ununservise"目录下。然后git提交窗口把output-metadata.json加入忽略文件，然后commit->push。Terminal输入。]]></description><category></category></item><item><title><![CDATA[MyEclipse tomcat debug 断点看不到变量值]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/137914802</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/137914802</guid><author>sooxin</author><pubDate>Thu, 18 Apr 2024 11:42:35 +0800</pubDate><description><![CDATA[这个设置确保了在编译Java源码时，生成的Class文件里包含LocalVariableTable属性表，这对于调试时查看变量值是必要的4。进入Window -> Preferences -> Java -> Editor -> Hovers，确保勾选了Variable Values选项。通过上述方法，应该能够解决在MyEclipse中使用Tomcat调试时看不到断点处变量值的问题。如果上述方法都不奏效，可以尝试使用Ctrl + Shift + I快捷键来强制显示变量的值1。确保整个程序已经加载完毕。]]></description><category></category></item><item><title><![CDATA[Web3j签名并在Solidity智能合约中验签]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/134932989</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/134932989</guid><author>sooxin</author><pubDate>Mon, 11 Dec 2023 17:54:58 +0800</pubDate><description><![CDATA[hash相当于keccak256(abi.encodePacked(num, list, _address));msg相当于abi.encodePacked(num, list, _address)；链接：https://www.jianshu.com/p/35f5222cc63e。商业转载请联系作者获得授权，非商业转载请注明出处。其他地方大多是使用web3的形式，web3j的基本没有。首先写一个简单智能合约用于验签测试。作者：冠以urey之名。]]></description><category></category></item><item><title><![CDATA[IOS打包几个问题]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/131439849</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/131439849</guid><author>sooxin</author><pubDate>Wed, 28 Jun 2023 16:29:49 +0800</pubDate><description><![CDATA[/Library/Ruby/Gems/*” 换成自己对应目录。]]></description><category></category></item><item><title><![CDATA[AWS EC2 SSH remote connect]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/130588406</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/130588406</guid><author>sooxin</author><pubDate>Tue, 09 May 2023 20:41:41 +0800</pubDate><description><![CDATA[vi /etc/ssh/sshd_config​​sudo su->rootsudo passwd//-------------------------------------------PasswordAuthentication yesPermitRootLogin yes/etc/init.d/ssh restart​]]></description><category></category></item><item><title><![CDATA[使用 RxJava 的正确姿势]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/129933298</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/129933298</guid><author>sooxin</author><pubDate>Mon, 03 Apr 2023 16:41:52 +0800</pubDate><description><![CDATA[最近在使用 RxJava 时遇到了一些比较诡异的问题，排查的过程中做了点研究，发现平时大家的用法多多少少都有些问题。有些地方存在隐患，有些用法不够简练，我把这些问题简单做一下分类和总结，供大家参考。]]></description><category></category></item><item><title><![CDATA[一个solidity小错误]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/128449872</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/128449872</guid><author>sooxin</author><pubDate>Mon, 26 Dec 2022 21:49:21 +0800</pubDate><description><![CDATA[addLiquidty() 为public,且没有权限判断，而合约里本身有预存的ZXD，攻击者可以通过转入BNB到合约，然后触发addLiquidty(),再 removeLiquidty(),从而盗取合约里面的ZXD,然后卖掉套利。addLiquidty() 设置为private，同时以后写合约注意，不需要的函数方法都应该设置为private,以避免出现漏洞。转入合约一定数量其他代币+BNB，合约根据转入的BNB+ZXD自动加池子。]]></description><category></category></item><item><title><![CDATA[如何使用 MetaMask 加速或取消未决交易]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/124642031</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/124642031</guid><author>sooxin</author><pubDate>Sun, 08 May 2022 00:15:56 +0800</pubDate><description><![CDATA[当我们在区块链上提交交易时，我们通常会在区块链的原生代币中支付一笔gas费。

这一费用往往会根据市场条件自动调整，即区块链本身对区块空间的需求，但如果交易卡住了很长一段时间，它也可以通过向网络竞价来手动调整，以便更快地处理我们的交易。

在本文中，我们将解释如何加速长时间待处理的被卡住的交易，或者完全取消交易。

如何加快与MetaMask区块链交易

在MetaMask上发送交易后，一个新交易将被添加到队列中。将它添加到队列后，我们将看到两个按钮——speed up和cancel。



在单击Spee]]></description><category></category></item><item><title><![CDATA[pankswap 兑换的时候报Fail with error ‘UniswapV2: K‘]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/124532392</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/124532392</guid><author>sooxin</author><pubDate>Sun, 01 May 2022 20:53:47 +0800</pubDate><description><![CDATA[// this low-level function should be called from a contract which performs important safety checks
function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external lock {
  require(amount0Out &gt; 0 || amount1Out &gt; 0, 'Uniswap..]]></description><category></category></item><item><title><![CDATA[以太坊Solidity函数的external/internal，public/private，view/pure/payable区别]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/124532332</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/124532332</guid><author>sooxin</author><pubDate>Sun, 01 May 2022 20:48:47 +0800</pubDate><description><![CDATA[1. 函数类型：内部(internal)函数和外部(external)函数
函数类型是一种表示函数的类型。可以将一个函数赋值给另一个函数类型的变量，也可以将一个函数作为参数进行传递，还能在函数调用中返回函数类型变量。 函数类型有两类：- 内部（internal）函数和 外部（external） 函数：

内部函数只能在当前合约内被调用（更具体来说，在当前代码块内，包括内部库函数和继承的函数中），因为它们不能在当前合约上下文的外部被执行。 调用一个内部函数是通过跳转到它的入口标签来实现的，就像在当前合约的内部]]></description><category></category></item><item><title><![CDATA[Remix本地环境搭建]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/124518128</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/124518128</guid><author>sooxin</author><pubDate>Sat, 30 Apr 2022 20:29:28 +0800</pubDate><description><![CDATA[前提条件：安装nodejs。需要用到npm和cnpm
可在终端中查看node版本：

C:\Users\璐从今夜白。&gt;node -v
v12.18.3
1
2
安装步骤如下：
第一步：命令行安装REMIX IDE
CTRL+R调出WINDOWS命令行窗口，输入以下命令安装remix-ide本地环境。

npm install remix-ide -g
1
安装成功结果输出如下：

npm WARN deprecated circular-json@0.3.3: CircularJSON is in m]]></description><category></category></item><item><title><![CDATA[智能合约编程/Dapp漏洞 -- 交易授权/Tx.Origin Authentication]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/124372249</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/124372249</guid><author>sooxin</author><pubDate>Sat, 23 Apr 2022 22:55:06 +0800</pubDate><description><![CDATA[Solidity有一个全局变量tx.origin， 它回溯整个调用栈返回最初的，真正发起调用/交易的账户地址。在智能合约里使用这个变量做用户验证的话，就会留下一个受钓鱼攻击的漏洞。可以看这个Stack Exchange问答： Peter Venesses’s Blog and Solidity — Tx.Origin attacks（https://medium.com/coinmonks/solidity-tx-origin-attacks-58211ad95514）。

攻击原理

如果一个合约使用tx]]></description><category></category></item><item><title><![CDATA[Java 获取各时区时间，获取当前时间到格林威治时间1970年01月01日00时00分00秒的秒数]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/119940661</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/119940661</guid><author>sooxin</author><pubDate>Thu, 26 Aug 2021 21:20:15 +0800</pubDate><description><![CDATA[格林威治时间即UTC/GMT时间，1970年01月01日00时00分00秒（即UTC+8的北京时间1970年01月01日08时00分00秒）
	计算代码如下：



 1  /**
 2      * 获取指定时间到格林威治时间的秒数
 3      * UTC：格林威治时间1970年01月01日00时00分00秒（UTC+8北京时间1970年01月01日08时00分00秒）
 4      * @param time
 5      * @return
 6      */
 7     public s]]></description><category></category></item><item><title><![CDATA[Centos7 SSH公钥生成及配置]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/119940612</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/119940612</guid><author>sooxin</author><pubDate>Thu, 26 Aug 2021 21:17:22 +0800</pubDate><description><![CDATA[1.你可以按如下命令来生成 sshkey:


ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

2.按照提示完成三次回车，即可生成 ssh key。通过查看~/.ssh/id_rsa.pub文件内容，获取到你的 public key


cat ~/.ssh/id_rsa.pub

3.复制生成后的 ssh key，添加到项目中。

4.添加后，在终端（Terminal）中输入


ssh -T git@gitee.com

5.简单的设置


git config -...]]></description><category></category></item><item><title><![CDATA[CentOS7.4 安装 MySQL5.7]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/119940570</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/119940570</guid><author>sooxin</author><pubDate>Thu, 26 Aug 2021 21:14:49 +0800</pubDate><description><![CDATA[下载并安装MySQL官方的 Yum Repository 在/root/目录下建立一个downloads文件夹


cd 
mkdir downloads

进去downloads并使用wget下载Yum Repository


cd downloads
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

下载完成后，使用yum安装仓库


yum -y install mysql57-commu]]></description><category></category></item><item><title><![CDATA[MyEclipse项目名和部署到tomcat上项目名不一致]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/119852964</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/119852964</guid><author>sooxin</author><pubDate>Sun, 22 Aug 2021 15:16:31 +0800</pubDate><description><![CDATA[右击项目，选择properties  在左上角搜索框输入web ，进入Web，Context-root的名称 就是部署到tomcat上的名称。
]]></description><category></category></item><item><title><![CDATA[Linux的buff/cache占用内存过高解决方法]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/116243456</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/116243456</guid><author>sooxin</author><pubDate>Wed, 28 Apr 2021 21:10:50 +0800</pubDate><description><![CDATA[问题展示
最近，公司的开发服务器总是偶尔有一些java服务莫名其妙的停掉。通过排查发现是内存不足，奇怪的是，内存只是用了一半，但是可用的却只有不到1G（峰值时估计更少）。下面是具体的内存使用信息：

可以看到，可用的内存只有888M，内存共有62G，罪魁祸首就是这个buff/cache占用了27G。

产生原因
Linux操作系统频繁存取文件会导致内存被用光，即便是程序结束后也不会被正常释放，这就会导致buffers和cached占用过高。
首先，简单了解一下buff/cache的介绍：

total：是指]]></description><category></category></item><item><title><![CDATA[Netty系列之Netty百万级推送服务设计要点]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/84926271</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/84926271</guid><author>sooxin</author><pubDate>Thu, 20 Sep 2018 22:50:34 +0800</pubDate><description><![CDATA[

1. 背景

1.1. 话题来源
最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我，咨询推送服务相关的问题。问题五花八门，在帮助大家答疑解惑的过程中，我也对问题进行了总结，大概可以归纳为如下几类：

Netty是否可以做推送服务器？
如果使用Netty开发推送服务，一个服务器最多可以支撑多少个客户端？
使用Netty开发推送服务遇到的各种技术问题。

由于咨询者...]]></description><category></category></item><item><title><![CDATA[网络游戏同步的算法]]></title><link>https://blog.youkuaiyun.com/sooxin/article/details/84926270</link><guid>https://blog.youkuaiyun.com/sooxin/article/details/84926270</guid><author>sooxin</author><pubDate>Thu, 20 Sep 2018 22:45:54 +0800</pubDate><description><![CDATA[
   不知道大家是否碰到过这种情况，当某个玩家发出一个火球，这个火球有自己的运动轨迹，那么如何来判断火球是否打中了人呢？大部分情况，当策划提出这个要求的时候，一般会被程序否认，原因是：太麻烦了，呵呵。复杂点的还有包括两个火球相撞之类的事情发生。
     那么网络游戏中，是否真的无法模拟实现这种模拟呢？
     首先我们来看看模拟此种操作会带来什么样的麻烦：
     1，服务器必须tr...]]></description><category></category></item></channel></rss>