有限在线用户的场景中,前后端分离是多此一举

博主头像 无论你是纯前端、纯后端、还是全栈,请花3分钟耐心看完本文,可能有点用。 前言 如果一个人只熟悉后端,那他对前端的评价往往不够中立,反之已然。本人凑巧前后端都熟悉。 只针对各种管理系统,同时在线的用户量有限的系统,如:电商管理后台、OA\MES\ERP\WMS....等。 这里说的前端是指所有前端,浏 ...

游戏反外挂技术揭秘

博主头像 前面的文章,我们介绍了inline hook、硬件断点hook、远程线程、代码完整性校验。其实都是为了本篇文章做铺垫,作者做过3年的游戏反外挂工作,今天就把反外挂技术做一个总结。 反外挂工作感悟 永远在路上 没有破解不了的反外挂系统,反外挂是一个对抗过程,需要不断升级。我们反外挂小组会采取对抗方式提 ...

.NET Core如何配置TLS Cipher(套件)?

博主头像 前言 前不久我发表了一篇关于TLS协议配置被我钻了空子,经过第三方合作伙伴验证,针对此TLS协议存在不安全套件,急催速速解决,那么我们本篇开始继续整活!第三方合作伙伴对平台安全严苛要求,我们已连续发版十几次进行处理,在此过程中使得我对安全有了进一步认识,具体认识则是在技术解决方案和密码学盲点两方面。 ...

安全优雅地停止线程

博主头像 首先,先抛出一个问题,该如何安全而优雅地停止线程? 这道问题的背后,可以很小,小到只是简单终止一个Thread线程,也可以很大,大到例如Dubbo应用的优雅下线......它们其实都有一个共同之处,即非一刀断式地暴力停止某个进程或者线程,而是能够实现在终止过程中,有机会去清理资源,跑完剩余的任务,最 ...

进程线程篇——线程切换(上)

博主头像 写在前面 此系列是本人一个字一个字码出来的,包括示例和实验截图。由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我 ...

Python 面向对象程序设计

博主头像 Python 面向对象程序设计 1 面向过程编程 面向过程——Procedure Oriented,是一种以过程为中心的编程思想,它首先分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,在使用时依次调用,是一种基础的顺序的思维方式。面向过程开发方式是对计算机底层结构的一层抽象,它将程序分 ...

SpringBoot 整合 MyBatis,实现 CRUD 示例

博主头像 本文通过 SpringBoot 的命令行应用,演示 SpringBoot 和 MyBatis 的整体过程,以及实现基本 CRUD 的示例。 整体实践下来,发现 MyBatis 的使用是有套路可循的,对于某一张数据表的读写操作: 创建一个或多个实体类,用于数据交互; 创建一个 MyBatis Ma... ...

LeetCode:旋转图像

题目描述 给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 作者:力扣 (LeetCode) 链接:https://leetcode-cn.com/lee ...

测试是否有必要看开发代码?如何能看懂?

博主头像 说出来你可能不信,上一秒我还在赛道刷圈速,下一秒就想到了这个话题... 其实这个话题在我待整理列表里躺了挺久的,今天恰好周六,那就静下来谈谈我个人的一些感受。 就以题目里的 2 个问题进行展开吧。 一、是否有必要看开发代码? 对于这个问题,我觉得回答“必要”或者“不必要”都会不太恰当,具体因人而异。 ...

jmeter+ant输出测试报告

博主头像 jmeter自己本身可以输出html测试报告的,不过这种自带的测试报告特别简陋,如下图所示,一般我们是不看这种的。 我们可以使用ant来输出更高效、更直观的测试报告。 首先下载安装ant, 我用的是apache-ant-1.9.7版本,大家也可以去官网或者网上随便一搜,下载就可以了。 把下载好的an ...

大学毕业三年的一些经历与思考

博主头像 前言 从2018年大学毕业到现在,已经三年多了。 目前的生活,已经很接近我所理想的样子了,比以往任何时候都要无比接近。 工作方面,能学到东西,同事之间相处也比较融洽,公司氛围很不错。 生活方面,跟很要好的朋友一起合租,经常自己在家做饭吃,也能跟朋友在家谈天说地缓解各方面的压力。 最近睡眠质量也有所好 ...

python APScheduler模块

博主头像 简介 一般来说, Celery是python可以执行定时任务的常用第三方库, 但是Celery不支持动态添加定时任务 (Django有插件可以动态添加). 除此之外, APScheduler相对于Celery来说更加轻量级, 有学习的价值. APScheduler有很多优点, 如: 支持持久化, 且 ...

面试官问我:你做事仔细吗?

博主头像 引子 2015年的时候,我去58面试。因为有前同事的介绍,面试官不用问就对我各方面能力什么的都很了解。本身那个同事级别就比较高(如果我面试通过,大概他大概是我领导的样子)。所以过程中可以看出,我去面试前级别什么的都定好了。面试就是走个过场。 其中一个面试官,级别应该是我那位同事的领导。就问我:“因为 ...

面试官说:你来设计一个短链接生成系统吧

博主头像 引言 相信大家在生活中,特别是最近的双十一活动期间,会收到很多短信,而那些短信都有两个特征,第一个是几乎都是垃圾短信,这个特点此处可以忽略不计,第二个特点是链接很短,比如下面这个: 我们知道,短信有些是有字数限制的,直接放一个带满各种参数的链接,不合适,另外一点是,不想暴露参数。好处无非以下: 太长 ...

函数指针的重要用途——回调函数

博主头像 什么是回调函数? 粗暴的说,如果一个函数作为另一个函数的参数传入,这种函数就可以称为回调函数(这句话并不严谨,但为了说明问题可以这么理解)。C语言里面,一般就是一个函数的参数列表中有函数指针,函数指针指向的函数就是一个回调函数。 为什么要有回调函数? 那为什么不直接在函数体内调用,而非要把函数指针作 ...

什么是接口,如何理解

博主头像 Java中的接口其实就是一套“标准”或者“规范”,比如使用接口实现【电脑对鼠标、键盘使用USB接口的管理】,鼠标和键盘他们与接口之间并不存在子类和父类的关系,但是鼠标和键盘又都要通过USB接口插入电脑,如果没有一个统一的规范,那么电脑该怎么识别呢?所以就需要一个“标准”来统一约束鼠标和键盘的使用规则 ...

<123···200>