Month: 8月 2022

WordPress判断用户是否登录的代码

is_user_logged_in()
说明
根据当前访问者是否登录返回布尔值true或false。

参数
该函数不接受任何参数。

用法

复制代码 代码如下:
<?php if ( is_user_logged_in() ) { ... } ?>

示例
根据当前访问者的登录情况,使用is_user_logged_in()函数在主题文件中展示不同输出结果。

复制代码 代码如下:
<?php
if ( is_user_logged_in() ) {
echo 'Welcome, registered user!';
} else {
echo 'Welcome, visitor!';
}
?>

不要建立自己的框架

终端命令“rm -rf .git”,被随机字符包围。

在 2019 年,我想创建一个紧跟我们的定制设计并具有流畅动画和交互的网站。我看着UIkit(在新标签中打开),但我没有选择它有两个原因:

  • 它对设计有自己的看法
  • 它不符合我对“流畅”的要求

这导致我搜索其他框架,这些框架与 UIkit 不同,仅提供基本的 JavaScript 功能,允许您根据需要设置样式和动画。我什么也没找到。所以,很自然,我决定自己做(在新标签中打开).

我正在与我正在开发的网站并行开发框架,这很棒。我能够使代码恰到好处并实现我需要的功能。我从 UIkit 中获得了一些灵感,但坚持我的主要想法。

后来发现效率不高,所以决定重构。但是因为我正在开发那个框架并同时使用它,所以我不仅要重新设计框架,还要重新设计网站。除此之外,我试图使这项工作适用于尽可能多的用例。如果你使用 React 会怎样?如果你不这样做呢?如果你使用 jQuery 会怎样?如果你连 JavaScript 都不太了解怎么办?

至此,我的热情开始慢慢消退。不知不觉中,我把自己置于一个想要解决尚不存在的问题并完美解决它们的位置。但我仍然相信,最终,它会是“值得的”。

然后,我们的团队开始壮大。我不再是唯一一个在那个网站上工作的人。因为它使用了我的框架,所以我不得不让新人使用它。这意味着我必须编写自述文件,然后是文档、示例用法等。尽管如此,我们仍然需要在 Slack 中清理一些东西。

因为我们的团队在成长,所以我们的工作量也在增加。这导致与网站并行的框架工作在周末和清晨过渡到框架工作。

不过,我继续。我有(并且到现在仍然有)放弃项目的习惯,所以我决定至少将框架简化为可以通过 npm 下载的有组织的小 JavaScript 片段。但是我是否使用自定义元素(在新标签中打开)

ffmpeg rtsp流转m3u8流

ffmpeg rtsp流转m3u8流

ffmpeg -rtsp_transport tcp -i "rtsp://admin:admin123@192.168.1.123:554/live/av0" -fflags flush_packets -max_delay 1 -an -flags -global_header -hls_time 1 -hls_list_size 3 -vcodec copy -s 216x384 -b 1024k -y test.m3u8

 

 

ffmpeg rtsp流转发

ffmpeg -rtsp_transport tcp -i "rtsp://admin:admin123@192.168.1.123:554/live/av0" -vcodec h264 -acodec aac -f …

        

2022年全球有多少开发者(程序员)

软件是当今世界的驱动力——估计有 9 万亿台设备在使用中,它是连接全球各个角落人们的粘合剂。软件开发人员正在塑造和构建现代技术世界。

  1. 开发者的世界 
  2. 新兴技术
  3. 教育和学习方式
  4. 软件开发商的供需情况
  5. 疫情的影响
  6. 开发人员数量的增长对欧洲的开发人员意味着什么?
  7. 下一步是什么? 

随着全球软件开发人员数量的不断增加,增长热点(就开发人员而言)也在不断变化。正如我们在上一篇文章中所讨论的,2013 年大约有 1820 万软件开发人员,而这个数字只是 - 预计未来几年还会增加。

基于这些预测和从那时起最近的开发人员增长率,我们已经知道 2022 年的情况。

开发者的世界 

根据第 20 版开发者国情报告,截至 2021 年底,全球2680 万活跃的软件开发者。 专家预测,到2030 年,开发者的数量将增长到 4500 万。这些令人印象深刻的数字证明了全球对 IT 专业人员的需求正在增长,并将继续增长。

性别

从一次经历谈 TIME_WAIT 的那些事

今天来讲一讲TCP 的 TIME_WAIT 的问题。这个问题尽人皆知,不过,这次遇到的是不太一样的场景,前两天也解决了,正好写篇文章,顺便把 TIME_WAIT 的那些事都说一说。对了,这个场景,跟我开源的探活小工具 EaseProbe 有关,我先说说这个场景里的问题,然后,顺着这个场景跟大家好好说一下这个事。…

最牛B常用的Linux Shell命令

最牛B常用的Linux Shell命令

引言

Shell作为Unix系操作系统当中最有魅力且不可或缺的组件,经过数十载的洗礼不仅没有被淘汰,而且愈加变得成熟稳健,究其原因,大概因为它是个非常稳固的粘合剂,能够把大量功能强大的组件任意配搭,总能很好很快地完成用户的任务。

本文的一些命令很可能看起来是“雕虫小技”,我们只好仰慕一下Shell大牛了,但是有些细节我会稍加发掘加以说明,遇到有趣的地方希望能博您一笑了。…

        

如何干掉一条tcp 连接(活跃/非活跃)

如何干掉一条tcp 连接(活跃/非活跃)

背景

最近在测试环境部署服务的时候老是会有端口被占用情况用netstat/ss 查看后发现端口一直被占用
同另外一个ip 建立了tcp 连接,类似于这样:

ESTAB      0      0      192.168.103.169:12345              192.168.103.12:10261 

当然这个问题也不是最近才遇到,之前也遇到过,不过之前都是很快这个连接就自动消失,我就可以欢快
的使用我自己喜欢的12345 端口,无奈这次一直连续好几天这个连接一直存在导致我一直无法使用这个端口。…

    

TCP疑难问题案例汇总

TCP疑难问题案例汇总

碰到各种奇葩的TCP相关问题,所以汇总记录一下。分析清楚这些问题的所有来龙去脉,就能帮你在TCP知识体系里建立几个坚固的抓手,让TCP知识慢慢在抓手之间生长和互通

服务不响应的现象或者奇怪异常的原因分析

一个黑盒程序奇怪行为的分析 listen端口上很快就全连接队列溢出了,导致整个程序不响应了

举三反一–从理论知识到实际问题的推导 服务端出现大量CLOSE_WAIT 个数正好 等于somaxconn(调整somaxconn大小后 CLOSE_WAIT 也会跟着变成一样的值)

活久见,TCP连接互串了 应用每过一段时间总是会抛出几个连接异常的错误,需要查明原因。排查后发现是TCP连接互串了,这个案例实在是很珍惜,所以记录一下。

如何创建一个自己连自己的TCP连接

传输速度分析

案例:TCP传输速度案例分析(长肥网络、rt升高、delay ack的影响等)

原理:就是要你懂TCP–性能和发送接收Buffer的关系:发送窗口大小(Buffer)、接收窗口大小(Buffer)对TCP传输速度的影响,以及怎么观察窗口对传输速度的影响。BDP、RT、带宽对传输速度又是怎么影响的

就是要你懂TCP–最经典的TCP性能问题 Nagle和Delay ack

就是要你懂TCP–性能优化大全

TCP队列问题以及连接数

到底一台服务器上最多能创建多少个TCP连接

就是要你懂TCP队列–通过实战案例来展示问题

就是要你懂TCP–半连接队列和全连接队列

就是要你懂TCP–握手和挥手

防火墙和reset定位分析

对ttl、identification等的运用

关于TCP连接的Keepalive和reset

就是要你懂网络–谁动了我的TCP连接

TCP相关参数

TCP相关参数解释

网络通不通是个大问题–半夜鸡叫

网络丢包

工具技巧篇

netstat定位性能案例

    

使用 Docker 高效搭建本地开发环境(详细教程)

本地开发之痛苦

在开发之前,首先你需要安装各种开发工具和服务支持到你的开发环境当中,可能会出依赖问题,环境变量问题,端口冲突,经编译库问题等等。

开发途中,可能你又需要依赖一些其他的服务,你最好祈祷不会出问题,可能你又要重写来配置你的环境,因为你的所有的依赖服务都在你的唯一的工作空间里面。

如果你的伙伴的操作系统不统一,可能你还会遇到一些不同元字符解析不一致的问题。

然后上线之前,可能你在本地开发调试都可以完美运行,一但部署到服务器,就会出现各种问题。因为大多数情况下,我们的开发环境和生产环境并不相同。

可能你下次又有要用到一个新的开项目的开发环境。你又要重复面对上面这些问题.

你不得不去审视,你要话费大量的时间用在搭建环境当中来。

什么是Docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 对我们而言,我觉得只需要把他理解成一个便携的应用容器即可

Docker本地开发环境的好处

试错

对开发者而言,每天会催生出的各式各样的新技术都需要尝试,然而开发者却不太可能为他们一一搭建好环境并进行测试。时间非常宝贵,正是得益于 Docker,让我们有可能在一条或者几条命令内就搭建完环境,而且这个环境大到一个特定版本的操作系统,小到一个软件。Docker 有一个傻瓜化的获取软件的方法,Docker后台会自动获得环境镜像并且运行环境。

统一开发和生产环境

对于一般的小公司来说,搭建一个公用的开发环境是一件不那么划算的事情。那么就可以用Docker来统一开发环境,因为不管你用的是WindowsMac 还是 Ubuntu。 如果生产环境也使用的Docker的话,你甚至可以直接打包一套环境,直接丢上去就可以运行了,再也不用担心开发-生产环境之间的差异了。

高性能

虚拟机的粒度是