<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:wfw="http://wellformedweb.org/CommentAPI/">
<channel>
<title>dwt&#039;s life - Other things</title>
<link>https://dwt.life/category/others/</link>
<atom:link href="https://dwt.life/feed/category/others/" rel="self" type="application/rss+xml" />
<language>zh-CN</language>
<description></description>
<lastBuildDate>Sun, 18 Jun 2023 22:13:54 +0800</lastBuildDate>
<pubDate>Sun, 18 Jun 2023 22:13:54 +0800</pubDate>
<item>
<title>巴欧教程正则</title>
<link>https://dwt.life/archives/332/</link>
<guid>https://dwt.life/archives/332/</guid>
<pubDate>Sun, 18 Jun 2023 22:13:54 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[|#&lt;a1&gt;(.?)#is&gt; &#8617;]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>|#&lt;a<sup id="fnref-1"><a href="#fn-1" class="footnote-ref">1</a></sup><em>&gt;(.</em>?)</a>#is</p><div class="footnotes"><hr><ol><li id="fn-1">&gt; <a href="#fnref-1" class="footnote-backref">&#8617;</a></li></ol></div>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/332/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>Hi tool 证件照底色更换</title>
<link>https://dwt.life/archives/317/</link>
<guid>https://dwt.life/archives/317/</guid>
<pubDate>Thu, 17 Nov 2022 23:03:30 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[地址：一键扣图/证件照底色更换可以更换成透明背景，红色背景，蓝色背景或者白色，黑色背景。很方便的在线扣图工具，并且证件照底色更换的效果也很好。https://tool.hi.cn/koutu/]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>地址：<br><a href="https://tool.hi.cn/koutu/">一键扣图/证件照底色更换</a></p><p>可以更换成透明背景，红色背景，蓝色背景或者白色，黑色背景。<br>很方便的在线扣图工具，并且证件照底色更换的效果也很好。</p><p><a href="https://tool.hi.cn/koutu/">https://tool.hi.cn/koutu/</a></p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/317/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>jarsigner给aab包签名</title>
<link>https://dwt.life/archives/268/</link>
<guid>https://dwt.life/archives/268/</guid>
<pubDate>Mon, 08 Aug 2022 04:47:06 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[`jarsigner -verbose -keystore keystore位置 -storepass 123123 -keypass 123123 -digestalg SHA-256 -si...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>`jarsigner -verbose -keystore keystore位置 -storepass 123123 -keypass 123123 -digestalg SHA-256 -sigalg SHA256withRSA -signedjar aab导出位置 原aab位置 alias这里</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/268/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>Yeap Cloud 内网穿透、流量转发免费额度使用</title>
<link>https://dwt.life/archives/261/</link>
<guid>https://dwt.life/archives/261/</guid>
<pubDate>Fri, 05 Aug 2022 03:20:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[Yeap Cloud是一家成立于2020年的自研发商家，之前主打的产品是存储服务器和智能DNS。现在上线了内网穿透和流量转发服务，目前所有节点流量均*1，不设置不同费率，并且采用订阅+资源包制来...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>Yeap Cloud是一家成立于2020年的自研发商家，之前主打的产品是存储服务器和智能DNS。<br>现在上线了内网穿透和流量转发服务，目前所有节点流量均*1，不设置不同费率，并且采用订阅+资源包制来提供性价比更高的服务。<br>以下是流量转发的订阅价格：</p><table><thead><tr><th>名称</th><th>价格</th><th>端口数</th><th>带宽</th><th>每月流量</th><th>连接数</th><th>可用节点</th></tr></thead><tbody><tr><td>普通订阅</td><td>0.00</td><td>2</td><td>10M</td><td>1G</td><td>30</td><td>普通节点</td></tr><tr><td>VIP1订阅</td><td>20.00</td><td>10</td><td>25M</td><td>80G</td><td>500</td><td>VIP1节点</td></tr><tr><td>VIP2订阅</td><td>30.00</td><td>15</td><td>50M</td><td>100G</td><td>1000</td><td>VIP2节点</td></tr></tbody></table><p>同时，如果订阅内资源用尽可通过购买附加资源包实现扩充，并且流量包次月按95%继承。<br><img src="https://pic.8oh.com.cn/cos/2022/08/05/0c7993197e716_1659640726.png" alt="243.png" title="243.png"></p><p>这家内网穿透的购买方式也是一样的，同样提供了免费使用订阅：</p><table><thead><tr><th>名称</th><th>价格</th><th>隧道数</th><th>带宽</th><th>每月流量</th><th>可用节点</th></tr></thead><tbody><tr><td>普通订阅</td><td>0.00</td><td>2</td><td>10M</td><td>6G</td><td>普通节点</td></tr><tr><td>VIP1订阅</td><td>10.00</td><td>10</td><td>25M</td><td>80G</td><td>VIP1节点</td></tr><tr><td>VIP2订阅</td><td>20.00</td><td>15</td><td>50M</td><td>100G</td><td>VIP2节点</td></tr></tbody></table><p><a href="https://support.yeapcloud.com/forward/">流量转发</a></p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/261/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>Ironic 裸金属管理服务的底层技术支撑</title>
<link>https://dwt.life/archives/259/</link>
<guid>https://dwt.life/archives/259/</guid>
<pubDate>Sat, 30 Jul 2022 14:58:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[底层技术支撑PXE：预启动执行环境，支持客户端通过网络从 TFTP Server 下载操作系统镜像，并由此支持通过网络启动操作系统引导程序。IPMI：智能平台管理接口，一种开放标准的硬件管理接口...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<h1>底层技术支撑</h1><ul><li>PXE：预启动执行环境，支持客户端通过网络从 TFTP Server 下载操作系统镜像，并由此支持通过网络启动操作系统引导程序。</li><li>IPMI：智能平台管理接口，一种开放标准的硬件管理接口规范，通过 IPMI 可以控制物理服务器的电源、配置启动顺序、查看 KVM Console 等。</li><li>DHCP：动态主机配置协议，给局域网内的主机分配 IP 地址。<br>TFTP：简单文件传输协议，客户端与服务器之间进行简单文件传输的协议。相比 FTP，简单且开销小。</li><li>NBP：网络启动程序，自动加载并运行操作系统。</li></ul><h2>DHCP</h2><p>Dynamic Host Configuration Protocol (DHCP): DHCP is a standardized networking protocol used on Internet Protocol (IP) networks for dynamically distributing network configuration parameters, such as IP addresses for interfaces and services. Using PXE, the BIOS uses DHCP to obtain an IP address for the network interface and to locate the server that stores the network bootstrap program (NBP).</p><h2>NBP</h2><p>Network Bootstrap Program (NBP): NBP is equivalent to GRUB (GRand Unified Bootloader) or LILO (LInux LOader) - loaders which are traditionally used in local booting. Like the boot program in a hard drive environment, the NBP is responsible for loading the OS kernel into memory so that the OS can be bootstrapped over a network.</p><h2>TFTP</h2><p>Trivial File Transfer Protocol (TFTP): TFTP is a simple file transfer protocol that is generally used for automated transfer of configuration or boot files between machines in a local environment. In a PXE environment, TFTP is used to download NBP over the network using information from the DHCP server.</p><h2>IPMI</h2><p>Ironic 使用 IPMI 来控制裸机的上下电、设置开机启动顺序（PXE 启动或本地磁盘启动）、获取电源状态、获取传感器状态、控制台重定向等。在裸机上架自检阶段会配置裸机的 BMC，包括 IP 地址、掩码、网关、用户名和密码。然后将 IPMI 的 IP 地址、用户名和密码注册到 Ironic 数据库。这样 Ironic 就可以获取到裸机的电源状态、执行开关机以及设置开机启动顺序了。</p><p>IPMI（Intelligent Platform Management Interface，智能平台管理接口）是一项应用于服务器带外管理系统设计的标准，通过特有的硬件设备而不是操作系统网络连接来对服务器进行电源的手段。IPMI 能够横跨不同的操作系统、固件和硬件平台，可以智能的监视、控制和上报服务器的运作状况（e.g. 远程开启、关闭电源）以及健康特征（e.g. 温度、电压、风扇工作状态、电源状态等）。IPMI 良好的自治特性克服了以往基于操作系统的管理方式所受的限制，实现了在操作系统不响应或未加载的情况下仍然可以对其进行开关机、信息提取等操作。Ironic 正是利用此技术可以远程的对裸机进行上下电或者其他操作，而不是依赖物理开关或者操作系统。</p><p>IPMI 的核心是 BMC（Baseboard Management Controller ，底板管理控制器），BMC 通常是一个安装在服务器主板上的独立板卡，其不依赖于服务器的处理器、BIOS 或操作系统来工作，可谓非常地独立，是一个单独在系统内运行的无代理管理子系统。BMC 与主板上的不同传感器通信来监视系统是否有严重事件，并在某些参数超出其预置阈值时发出警报和日志事件。所有的 IPMI 功能都是向 BMC 发送命令（IPMI 规范中规定的指令）来完成的，BMC 接收并在系统事件日志中记录事件消息，维护描述系统中传感器情况的传感器数据记录。</p><p>当需要对系统文本控制台进行远程访问时，IPMI 的 SOL（Serial Over LAN，LAN 上串口）功能非常关键。SOL 通过将 IPMI 会话重定向到本地串行接口，允许远程访问 Windows 的紧急事件管理控制台（EMS）特殊管理控制台（SAC）或访问 Linux 的串行控制台。BMC 通过在 LAN 上重定向串行端口的信息来做到这点，从而提供了一种与服务器厂商无关的远程查看 OS BootLoader 或紧急管理控制台来诊断和维修故障的标准方式，IPMI 甚至允许在操作系统引导阶段配置各种组件。</p><p>BMC 具有以下功能：</p><ul><li>通过系统的串行端口进行访问</li><li>故障日志记录和 SNMP 警报发送</li><li>访问系统事件日志和传感器状况</li><li>远程开、关机</li><li>独立于系统电源或工作状态的支持</li><li>用于系统设置、基于文本公用程序和操作系统控制台的文本控制台重定向</li></ul><h2>ipmitool 操作示例：</h2><h3>改变服务器引导方式</h3><pre><code class="lang-shell">ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis bootdev pxe
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis bootdev disk
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis bootdev cdrom</code></pre><h3>服务器电源管理</h3><pre><code class="lang-shell"># 硬关机，直接切断电源
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power off 
# 软关机，即如同轻按一下开机扭
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power soft
# 硬开机
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power on
# 硬重启
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power reset
# power off, wait 1s, power on
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power cycle
# 获取当前电源状态
ipmitool -I lan -H &lt;server_ip&gt; -U root -P passwd chassis power status</code></pre><h2>PXE & iPXE</h2><p>Ironic 使用 PXE 引导启动 Deploy Image（RAMDisk），且 RAMDisk 内含有 IPA，是 Agent 部署方式的基础。PXE 的使用需要借助于 DHCP 服务器和 TFTP 服务器。DHCP 服务器主要给裸机的 PXE 网卡分配 IP 地址、传递 TFTP 服务器的 IP 地址以及 NBP 文件的位置信息。PXE 从 TFTP 服务器下载并执行 NBP 文件，根据 NBP 文件的执行结果，从 TFTP 服务器下载内核和系统文件并加载。此时的裸机就进入了 RAMDisk 系统，IPA 自启动后，会与 Ironic 取得联系并发送心跳。Ironic 控制 IPA 进行 User Image 的下载与安装。安装后，Ironic 设置裸机从根磁盘启动，并重启进入用户的操作系统。</p><p>PXE（Preboot Execute Environment，预启动执行环境），采用 C/S 架构，支持终端通过网络从远端服务器下载映像，并由此支持通过网络启动操作系统。PXE 是目前主流的无盘启动技术，它可以使计算机通过网络而不是从本地硬盘或光驱等设备启动。利用 PXE 进行系统安装需要被安装的主机上有 PXE 支持的网卡，现在的网卡一般都内嵌支持 PXE 的 ROM 芯片。当计算机引导时，BIOS 首先会把 PXE Client 调入内存中执行，PXE Client 被载入内存后，它便同时具有 DHCP Client 和 TFTP Client 的功能，DHCP Client 会向 DHCP Server 请求 IP 分配给将要安装 操作系统的终端主机，然后由 PXE Client 将放置在远端的启动软件包通过 TFTP（Trivial File Transfer Protocol）或 MTFTP（Multicast Trivial File Transfer Protocol）下载到本地内存中执行。由这个启动软件包完成终端的基本软件设置，从而引导预先安装在服务器中的终端操作系统。iPXE 是 PXE 的扩展版，支持更多的协议，兼容性更好，不挑网卡。支持 HTTP 协议，可以通过 HTTP、ISCSI SAN、FC SAN 等方式启动。iPXE 的官方网站：<a href="http://ipxe.org/">http://ipxe.org/</a></p><p>PXE 安装引导过程：</p><ul><li>终端从 PXE 网卡启动，向带内网络中的 DHCP 服务器索取 IP 地址和搜寻引导文件的位置。</li><li>DHCP 服务器返回分给终端 IP 以及 NBP（网络启动程序，会自动加载引导文件并运行操作系统）文件的路径（通常为 TFTP 服务器）。</li><li>终端从带内网络中的 TFTP 服务器下载 NBP。</li><li>终端得到了 NBP 后自动从 TFTP 服务器下载引导文件，比如：pxelinux.0（GRUB)、vmlinuz（内核文件），initrd（内存驱动盘）等文件。</li><li>安装操作系统</li></ul><p><img src="https://pic.8oh.com.cn/cos/2022/07/30/af787a0b6c84d_1659164213.png" alt="240.png" title="240.png"></p><p><img src="https://pic.8oh.com.cn/cos/2022/07/30/75c17806f4f3b_1659164217.png" alt="241.png" title="241.png"></p><h2>Cloud Init</h2><p>Ironic 通过集成在 User Image 中的 cloud-init 来完成操作系统配置信息的初始化，包括创建用户、修改密码、配置网络等。</p><p>详情请浏览：《Openstack 实现技术分解 (2) 虚拟机初始化工具 — Cloud-Init & metadata & userdata》</p><h2>Linux 操作系统启动引导过程</h2><ul><li>起电</li><li>加载主板 BIOS（主板固体程序）</li><li>BIOS 检测硬件是否有故障</li><li>BIOS 到 MBR（Master Boot Recorder，主引导记录）中寻找启动介质，MBR 的 512B 由 BootLoader 446B、分区表 64B 以及校验结束位 2B 组成。</li><li>常见的 BootLoader 有 GRUB2，它会将保存在 /boot 的 Kernel 加载到 RAM。</li><li>加载 Kernel 后，GRUB2 跳转到 Kernel 的入口运行，正式启动操作系统。</li></ul><p>注：GRUB2 的本质是一个微型操作系统，可以识别常用的文件系统。GRUB2 运行时会读取配置文件 /boot/grub2/grub.cfg，在 grup.cfg 中可以记录若干个 Kernel 条目，均以 menuentry 开头。menuentry 以 {} 包含了相应的启动项，linux16 这行指定 Kernel 的路径和启动参数。</p><p>e.g.</p><pre><code class="lang-shell">menuentry &#039;CentOS Linux (3.10.0-957.10.1.el7.x86_64) 7 (Core)&#039; --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option &#039;gnulinux-3.10.0-862.el7.x86_64-advanced-12253837-a340-4053-b3e8-3140da283a41&#039; {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root=&#039;hd0,msdos1&#039;
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint=&#039;hd0,msdos1&#039;  c78b0a6e-7906-4f1f-9667-c61741a4b5ee
        else
          search --no-floppy --fs-uuid --set=root c78b0a6e-7906-4f1f-9667-c61741a4b5ee
        fi
        # 根分区的位置
        # 以只读方式挂载根分区
        # rhgb（以图形化方式显示启动过程）
        # quiet（启动过程出现错误提示）
        # 字符集
        # 键盘布局
        # 语言
        linux16 /vmlinuz-3.10.0-957.10.1.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8
        initrd16 /initramfs-3.10.0-957.10.1.el7.x86_64.img
}</code></pre><p>initrd16 指定了 initramfs image 的位置，initramfs 是 initrd 的升级版，改进了后者不能调整大小的缺点。但两者的本质都是 boot loader initialized RAM disk，即在系统初始化引导时加载的 RAMDisk 设备，本质是一个小型的根目录。RAMDisk 内含了启动阶段中必须的驱动模块，可执行文件和启动脚本，并且这些程序可以在 /initrd 根目录上执行，不需要等到挂载了真正的根目录 (’/’) 之后才能被执行。RAMDisk 的存在完善 Kernel 的模块机制，让内核的初始化流程更具弹性。其中的 udevd 可执行文件在自动加载了磁盘驱动程序之后就可以 Mount 并切换到真正的根目录了。<br><img src="https://pic.8oh.com.cn/cos/2022/07/30/45530da886f08_1659164287.png" alt="242.png" title="242.png"></p><p><a href="https://www.cnblogs.com/jmilkfan-fanguiju/p/11825063.html#Linux__83">https://www.cnblogs.com/jmilkfan-fanguiju/p/11825063.html#Linux__83</a></p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/259/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>常见ISP及云服务提供商CIDR</title>
<link>https://dwt.life/archives/255/</link>
<guid>https://dwt.life/archives/255/</guid>
<pubDate>Sat, 09 Jul 2022 00:53:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[在为Yeap Cloud DNS的ISP列表整理的时候稍微收集了一下这些数据，会持续更新。Google Cloud：https://www.gstatic.com/ipranges/cloud....]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>在为Yeap Cloud DNS的ISP列表整理的时候稍微收集了一下这些数据，会持续更新。<br>Google Cloud：<br><a href="https://www.gstatic.com/ipranges/cloud.json">https://www.gstatic.com/ipranges/cloud.json</a><br>AWS：<br><a href="https://ip-ranges.amazonaws.com/ip-ranges.json">https://ip-ranges.amazonaws.com/ip-ranges.json</a><br>腾讯云：<br><a href="https://www.yeapcloud.com/static/cidr/tencent.txt">https://www.yeapcloud.com/static/cidr/tencent.txt</a><br>阿里云：<br><a href="https://www.yeapcloud.com/static/cidr/aliyun.txt">https://www.yeapcloud.com/static/cidr/aliyun.txt</a></p><pre><code class="lang-js">let arr = []
$(&#039;table tr&#039;).each(function(){arr.push($(this).find(&#039;td:eq(0)&#039;).text())})
arr.join(&quot;\n&quot;)</code></pre>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/255/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>Git PR进行修改后重新提交代码</title>
<link>https://dwt.life/archives/249/</link>
<guid>https://dwt.life/archives/249/</guid>
<pubDate>Sat, 11 Jun 2022 16:04:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[最近提交一个pr但是被要求修改了，于是我重新执行了git命令进行commit覆盖。git add -A  git commit --amend  git push --force-with-le...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>最近提交一个pr但是被要求修改了，于是我重新执行了git命令进行commit覆盖。<br><code>git add -A</code>  <br><code>git commit --amend</code>  <br><code>git push --force-with-lease</code><br>push之前可以检查一下branch: <code>git branch -vv</code></p><p><a href="https://docs.github.com/cn/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message">https://docs.github.com/cn/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message</a></p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/249/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>Hi Tool 工具网备案完成</title>
<link>https://dwt.life/archives/198/</link>
<guid>https://dwt.life/archives/198/</guid>
<pubDate>Wed, 13 Apr 2022 21:34:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[其实域名是tool.hi.cn不过最近也没什么可以写的，正好昨天发短信通知说完成了备案就今天水一篇。工具网是基于一个网上流传比较广的thinkphp5.1工具源码二次开发的，加入了一些新功能，比...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>其实域名是tool.hi.cn<br>不过最近也没什么可以写的，正好昨天发短信通知说完成了备案就今天水一篇。<br><img src="https://pic.8oh.com.cn/cos/2022/04/13/4a75d15c2953c_1649856632.png" alt="204.png" title="204.png"><br>工具网是基于一个网上流传比较广的thinkphp5.1工具源码二次开发的，加入了一些新功能，比如<a href="https://tool.hi.cn/apitool/">API接口在线测试</a>、<a href="https://tool.hi.cn/port/">服务器端口开放查询</a>、<a href="https://tool.hi.cn/runcode/">在线代码运行</a>、<a href="https://tool.hi.cn/encodephp/">PHP代码在线加密</a>，还有一个完成部分但是由于偷懒还没上线的<a href="https://tool.hi.cn/koutu/">一件抠图</a>工具。</p><p>我的博客即将同步至腾讯云+社区，邀请大家一同入驻：<a href="https://cloud.tencent.com/developer/support-plan?invite_code=3bxyytlw5rmsg">https://cloud.tencent.com/developer/support-plan?invite_code=3bxyytlw5rmsg</a></p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/198/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>腾讯云香港轻量32套餐按天续费</title>
<link>https://dwt.life/archives/180/</link>
<guid>https://dwt.life/archives/180/</guid>
<pubDate>Fri, 28 Jan 2022 00:06:00 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[领了888的券，https://cloud.tencent.com/act/pro/warmup?from=15950https://tencentcloud.pages.dev/{    &q...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p>领了888的券，<a href="https://cloud.tencent.com/act/pro/warmup?from=15950">https://cloud.tencent.com/act/pro/warmup?from=15950</a><br><img src="https://pic.8oh.com.cn/cos/2022/01/28/b393cd5e5674c_1643299869.png" alt="176.png" title="176.png"><br><a href="https://tencentcloud.pages.dev/">https://tencentcloud.pages.dev/</a></p><pre><code class="lang-json">{
    &quot;raw_goodsData&quot;: [
        {
            &quot;goodsCategoryId&quot;: 101594,
            &quot;goodsNum&quot;: 1,
            &quot;payMode&quot;: 1,
            &quot;regionId&quot;: 5,
            &quot;goodsDetail&quot;:{&quot;productCode&quot;:&quot;p_lighthouse&quot;,&quot;subProductCode&quot;:&quot;sp_lighthouse_bundle2022_gen_lin_01&quot;,&quot;pid&quot;:1012949,&quot;sv_lighthouse_compute_gen_lin_med2_1024&quot;:1,&quot;sv_lighthouse_rootdisk_gen_lin_med2_1024&quot;:1,&quot;sv_lighthouse_trafficpkg_gen_lin_med2_1024&quot;:1,
                &quot;productInfo&quot;: [
                    {&quot;name&quot;:&quot;运算组件&quot;,&quot;value&quot;:&quot;2核CPU、2GB内存 (通用型Linux-2核2G-30G-1T)&quot;},{&quot;name&quot;:&quot;系统盘&quot;,&quot;value&quot;:&quot;30GB SSD云硬盘 (通用型Linux-2核2G-30G-1T)&quot;},{&quot;name&quot;:&quot;流量包&quot;,&quot;value&quot;:&quot;1TB/月流量包 (通用型Linux-2核2G-30G-1T)&quot;},{&quot;name&quot;:&quot;地域&quot;,&quot;value&quot;:&quot;中国香港&quot;}
                ],
                &quot;resourceId&quot;: &quot;lhins-实例ID&quot;,
                &quot;autoRenewFlag&quot;: 0,
                &quot;timeUnit&quot;: &quot;d&quot;,
                &quot;timeSpan&quot;: 112
            }
        }
    ]
}</code></pre>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/180/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
<item>
<title>用随机梯度下降来优化人生</title>
<link>https://dwt.life/archives/158/</link>
<guid>https://dwt.life/archives/158/</guid>
<pubDate>Sat, 22 Jan 2022 12:27:54 +0800</pubDate>
<dc:creator>Ricky</dc:creator>
<description><![CDATA[要有目标。你需要有目标。短的也好，长的也好。认真定下的也好，别人那里捡的也好。就跟随机梯度下降需要有个目标函数一样。目标要大。不管是人生目标还是目标函数，你最好不要知道最后可以走到哪里。如果你知...]]></description>
<content:encoded xml:lang="zh-CN"><![CDATA[
<p><img src="https://pic.8oh.com.cn/cos/2022/01/22/a4f04f8adb415_1642825640.png" alt="pic" title="pic"></p><h1>要有目标。</h1><p>你需要有目标。短的也好，长的也好。认真定下的也好，别人那里捡的也好。就跟随机梯度下降需要有个目标函数一样。</p><h1>目标要大。</h1><p>不管是人生目标还是目标函数，你最好不要知道最后可以走到哪里。如果你知道，那么你的目标就太简单了，可能是个凸函数。你可以在一开始的时候给自己一些小目标，例如期末考个80分，训练一个线性模型。但接下来得有更大的目标，财富自由也好，100亿参数的变形金刚也好，得足够一颗赛艇。</p><h1>坚持走。</h1><p>不管你的目标多复杂，随机梯度下降都是最简单的。每一次你找一个大概还行的方向（梯度），然后迈一步（下降）。两个核心要素是方向和步子的长短。但最重要的是你得一直走下去，能多走几步就多走几步。</p><h1>痛苦的卷。</h1><p>每一步里你都在试图改变你自己或者你的模型参数。改变带来痛苦。但没有改变就没有进步。你过得很痛苦不代表在朝着目标走，因为你可能走反了。但过得很舒服那一定在原地踏步。需要时刻跟自己作对。</p><h1>可以躺平。</h1><p>你用你内心的激情来迈步子。步子太小走不动，步子太长容易过早消耗掉了激情。周期性的调大调小步长效果挺好。所以你可以时不时休息休息。</p><h1>四处看看。</h1><p>每一步走的方向是你对世界的认识。如果你探索的世界不怎么变化，那么要么你的目标太简单，要么你困在你的舒适区了。随机梯度下降的第一个词是随机，就是你需要四处走走，看过很多地方，做些错误的决定，这样你可以在前期迈过一些不是很好的舒适区。</p><h1>快也是慢。</h1><p>你没有必要特意去追求找到最好的方向和最合适的步子。你身边当然会有幸运之子，他们每一步都在别人前面。但经验告诉我们，随机梯度下降前期进度太快，后期可能乏力。就是说你过早的找到一个舒适区，忘了世界有多大。所以你不要急，前面徘徊一段时间不是坏事。成名无需太早。</p><h1>赢在起点。</h1><p>起点当然重要。如果你在终点附近起步，可以少走很多路。而且终点附近的路都比较平，走着舒服。当你发现别人不如你的时候，看看自己站在哪里。可能你就是运气很好，赢在了起跑线。如果你跟别人在同一起跑线，不见得你能做更好。</p><h1>很远也能到达。</h1><p>如果你是在随机起点，那么做好准备前面的路会非常不平坦。越远离终点，越人迹罕见。四处都是悬崖。但随机梯度下降告诉我们，不管起点在哪里，最后得到的解都差不多。当然这个前提是你得一直按照梯度的方向走下去。如果中间梯度炸掉了，那么你随机一个起点，调整步子节奏，重新来。</p><h1>独一无二。</h1><p>也许大家有着差不多的目标，在差不多的时间毕业买房结婚生娃。但每一步里，每个人内心中看到的世界都不一样，导致走的路不一样。你如果跑多次随机梯度下降，在各个时间点的目标函数值可能都差不多，但每次的参数千差万别。不会有人关心你每次训练出来的模型里面参数具体是什么值，除了你自己。</p><h1>简单最好。</h1><p>当然有比随机梯度下降更复杂的算法。他们想每一步看想更远更准，想步子迈最大。但如果你的目标很复杂，简单的随机梯度下降反而效果最好。深度学习里大家都用它。关注当前，每次抬头瞄一眼世界，快速做个决定，然后迈一小步。小步快跑。只要你有目标，不要停，就能到达。</p><p>作者：李沐<br>链接：<a href="https://zhuanlan.zhihu.com/p/414009313">https://zhuanlan.zhihu.com/p/414009313</a><br>来源：知乎</p>
]]></content:encoded>
<slash:comments>0</slash:comments>
<comments>https://dwt.life/archives/158/#comments</comments>
<wfw:commentRss>https://dwt.life/feed/category/others/</wfw:commentRss>
</item>
</channel>
</rss>