![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
框架
文章平均质量分 78
王中阳Go
专注服务端技术分享和求职简历指导。靠敲代码在北京买房的程序员。欢迎一起交流学习。
展开
-
性能优化反思:不要在for循环中操作DB
文章目录举个栗子场景说明举例说明:进一步优化性能对比注意参与互动如何提高程序运行速度,减轻服务器压力是服务端开发必须面对的一个问题。简单且朴素的原则:不要在for循环中操作DB,包括关系型数据库和NoSql。我们应该根据自己的业务场景,在for循环之前批量拿到数据,用尽量少的sql查询批量查到结果。在for循环中进行数据的匹配组装。举个栗子场景说明业务在多个情景下需要获得用户的详细信息,有点可以通过查询用户表直接获取到,有的需要查询关联关系表获取到,有的只保存了关联的id,并没有单独创建原创 2021-11-02 23:05:16 · 881 阅读 · 1 评论 -
Go gorm是时候升级新版本了 2.0新特性介绍(1) |Go主题月
今天是公元2021年3月30日,坊间流传PHP的git服务器被黑客攻入,因恶意代码服务器将关停,PHP还是世界上最好的语言吗?不知道,我是转Go了。今天本来是想写gorm相关的知识点的,遇到了批量插入的问题,发现很不科学,才发现gorm已经出了新版本2.0版本,最新的Tag是v1.21.6,我目前使用的是v1.9.10。下面介绍新版本的特性GORM 2.0 完全从零开始,引入了一些不兼容的 API 变更和许多改进。Context 支持通过 WithContext 方法提供 context.C.原创 2021-03-30 19:39:34 · 2452 阅读 · 0 评论 -
如何优雅的通过Shell脚本一键部署GO项目到服务器?
文章目录引言脚本一键操作部署流程脚本代码注意执行效果示例手动分步操作部署项目跨平台编译之:windows跨平台编译之:Mac其他问题欢迎交流引言如何优雅的部署go项目到服务器呢?我们可以通过shell脚本把以下操作进行封装:代码同步,打包,编译,重启进程,启动服务;一键执行shell,避免重复劳动。脚本一键操作部署流程本地把最新代码提交到git在服务器切换到shekk脚本目录下,运行shell脚本,一键部署./setup.sh脚本代码说明:下面的 RunningManageS原创 2021-03-26 14:08:58 · 4202 阅读 · 13 评论 -
进程 线程 协程 各自的概念以及三者的对比分析
文章目录进程线程进程和线程的区别和联系区别联系举例说明进程和线程的区别进程/线程之间的亲缘性协程线程(执行一个函数)和协程的区别和联系协程和多线程的优势?为什么有了多线程还要引入协程?更多参考进程概念进程,直观点说,保存在硬盘上的程序运行之后,会在内存空间里形成一个独立的内存体,这个内存体有自己独立的地址空间,有自己的堆,上级挂靠单位是操作系统。特点操作系统会以进程为单位,分配系统资源(CPU时间片,内存等资源),进程是资源分配的最小单位。示意图线程概念线程,有时被称为轻原创 2021-03-09 15:53:43 · 4824 阅读 · 5 评论 -
web开发必懂的概念和底层原理,通过对比的方式让大家更好的理解和使用。
文章目录TCP协议和UDP协议的对比?TCP协议的优点:TCP协议的缺点:各种攻击的名词解释阻塞调用和同步调用的区别?关于同步异步I/O 和 阻塞非阻塞I/O 更深刻的理解http与https的区别?session与cookie的对比?输入一个网址到浏览器渲染出页面的流程是什么?TCP协议和UDP协议的对比?TCP协议的优点:可靠稳定TCP在传输数据之前,会有三次握手来建立连接TCP在传输数据时,有确认、窗口、重传、拥塞控制机制TCP在传输数据完成后,会断开连接用来节省系统资源TCP协议的原创 2021-03-08 18:45:47 · 3267 阅读 · 1 评论 -
百度智能云 API鉴权总结
最近在研究百度云的一些服务,处理api接口鉴权时花了不少时间,总结一下,方便大家对接:Signer.php:签名工具类,鉴权签名的核心方法都在这里Utils.php:封装的工具类,鉴权,返回json数据等都在这里Account.php:示例Controller,请求百度云接口文章目录签名工具类封装的工具类,集成了常用的方法业务层controller:百度api在请求接口的同时做权限校验使用的tp5框架,代码仅供参考,思路可以供大家借鉴,如有不当之处,欢迎指正签名工具类Signer..原创 2021-03-08 14:32:39 · 2434 阅读 · 6 评论 -
多维度思考:如何提高项目的开发时间、提高安全性、提高运行速度,从多个维度带来的一些思考。
除了保证项目如期上线,如何保证项目上线后的运行速度,如何提高容灾能力,减少bug同样是我们需要考虑的问题。我们从以下几个方面来探究思考,抛砖引玉,看看大家是否有其他维度来提高项目,欢迎在评论区留言。文章目录1.框架选择方面(开发速度、项目性能)我们来探究一下相较于其他框架,为什么swoole的速度更快?swoole是如何做到的?2.数据库存储引擎方面(性能)我们通过对MySQL的MyISAM和InnoDB存储引擎做对比,来分析数据库对项目性能的影响3.算法方面(性能)我们通过深入了解算法相关的概.原创 2021-03-05 09:23:23 · 1775 阅读 · 19 评论 -
参考https加解密思路 实现自己网络请求数据传输的安全性,一致性,防篡改。(对称加密+非对称加密)
首先说明一下对称加密和非对称加密的概念。对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。非对称加密:非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。对称加密的特点:对称加密算法的优点是算法公开、计算量小、加密速原创 2021-03-01 16:51:02 · 9147 阅读 · 11 评论 -
butterKnife注解开发框架
java代码:package com.example.administrator.butterknife;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import andro原创 2015-11-06 15:59:34 · 517 阅读 · 0 评论