• Git认证方式https和ssh的原理及比较

    常见的代码托管平台GitHub、GitLab和BitBucket等,基本都会使用Git作为版本控制工具。平台一般都提供两种认证方式https和ssh。了解该过程能够更加自由地配置和使用,本文就来简单聊一下这两种认证方式。1.HTTPS与SSHGit可以使用四种协议来传输数据:本地协议(Local),git 协议,HTTPs 协议和SSH(Secure Shell)协议。对于多人...

    Linux 2021年09月22日 10 0
  • MySQL数据库,表结构设计的五个维度

    一、数据场景1、表结构简介任何工具类的东西都是为了解决某个场景下的问题,比如Redis缓存系统热点数据,ClickHouse解决海量数据的实时分析,MySQL关系型数据库存储结构化数据。数据的存储则需要设计对应的表结构,清楚的表结构,有助于快速开发业务,和理解系统。表结构的设计通常从下面几个方面考虑:业务场景、设计规范、表结构、字段属性、数据管理。2、用户场景例如存储用户基础信...

    MySQL 2021年09月22日 9 0
  • 菜鸟积分系统稳定性建设 - 分库分表&百亿级数据迁移

    一 前言拆库&数据迁移说白了,考验的不是一个人的技术功底,而是一个人干活的细致程度,以及抗压能力。无论在哪个公司,数据库迁移的机会都不会太多,因此,我也是非常珍惜这次历练,用阿里的一句老话来说就是 “因人成事,借事修人”。写这篇文章的目的主要是自己进行一个总结,也希望能给需要的同学们一些参考。二 背景在星爷的《大话西游》中有一句非常出名的台词:“曾经有一份真挚的感情摆在...

    MySQL 2021年09月22日 8 0
  • 从使用到自己实现简单Vue Router看这个就行了

    Vue Router 基础让我们先来了解下Vue Router的简单使用吧,先了解怎么使用,之后再去想办法怎么去实现1.简介路由:本质上是一种对应关系分类分为前端路由和后端路由后端路由比如node.js 的路由是 URL的请求地址和服务器上面的资源对应,根据不同的请求地址返回不同的资源前端路由在SPA(单页应用)中根据用户所触发的事件改变了URL 在无需刷新的前提下 显示不同的...

    Vue 2021年09月22日 7 0
  • 如何手动解析vue单文件并预览?

    开头笔者之前的文章里介绍过一个代码在线编辑预览工具的实现(传送门:快速搭建一个代码在线编辑预览工具),实现了css、html、js的编辑,但是对于demo场景来说,vue单文件也是一个比较好的代码组织方式,至少笔者就经常在写vue项目的同时顺便写写各种demo,但是分享不太方便,因为单文件不能直接运行看效果,基于此,笔者决定在之前的基础上再增加一个vue单文件的编辑及预览功能。...

    Vue 2021年09月22日 7 0
  • Jenkins 学习笔记

    本学习笔记参考《Jenkins 2.x实践指南》。1. Jenkins 简介#Jenkins 是一款自动化的任务执行工具。通常用于持续集成/持续交付领域。可以通过界面或Jenkinsfile告诉Jenkins执行什么任务,何时执行。理论上,我们可以让它执行任何任务,但是通常只应用于持续集成和持续交付。持续集成将软件生产过程从手工模式带入流水线模式,软件生产的某个环节都对应流水线...

    Java 2021年09月14日 43 0
  • FormData字段指定Content-Type

    后面效果需要查看调试器的 Network。起因今天下午下班前,后端的小伙伴突然问了我一个问题,“前端 POST 的 FormData 能不能设置 Content-Type”。嘿,当然能啊,不就是请求头的 Content-Type 吗?乌龙后才发现,他问我的是,能不能给 FormData 的单个字段设置 Content-Type,我当时就懵逼了,额,好像,不行吧。调研过程这激起了...

    前端技术 2021年09月14日 49 0
  • 我是如何设计短域名服务的,欢迎大家吐槽

    今天刚收到一个短信,里面就有一个短域名。这个短域名的目的很简单,为了在发短信的时候能省点钱,并且让用户体验不要那么糟糕,动不动发一个几百个字符的URL,小白用户一脸懵逼。其实短域名的原理非常简单,当你访问这个段域名的时候,短域名服务器会给你重定向到到真实的URL,浏览器会自动跳转到这个真实的URL。那么如何设计这样一个短域名服务呢?下面谈谈我个人的设想。第一个需要解决的问题,是...

    MySQL 2021年09月14日 48 0
  • Java的“泛型”特性,你以为自己会了?(万字长文)

    使用Java的小伙伴,对于Java的一些高级特性一定再熟悉不过了,例如集合、反射、泛型、注解等等,这些可以说我们在平时开发中是经常使用到的,尤其是集合,基本是只要写代码没有用不到的,今天我们先来谈谈泛型。1. 定义在了解一个事物之前,我们必定要先知道他的定义,所以我们就从定义开始,去一步一步揭开泛型的神秘面纱。# 泛型(generics) 他是 JDK5 中引入的一个新特性,泛...

    Java 2021年09月14日 49 0
  • 分享BigDecimalUtil类

    /** * @Title: * @Description: 数学计算 */ public class BigDecimalUtil { /** * 功能描述: <br> * 精确度 */ private static final int DEF_DIV_SCALE = 5; /** * 提供精...

    Java 2021年09月14日 41 0
  • Git常用命令

    1 创建版本库在项目文件夹内,执行 :git init2提交文件1新建文件后,通过git status 进行查看 稳健状态2 将文件添加到残存区 git add 文件名3提交文件到 本地库 git commit4编写注释 完成提交5 或者也可以git commit – m“注释内容”3查看文件提交记录1执行 git log文件名 进行查看历史记录2 git log –prett...

    技术文章 2021年09月14日 55 0
  • nginx配置ssl证书实现https (只有ssl.key和ssl.crt文件时)

    生成ssl.pem文件 openssl x509 -inform PEM -in ssl.crt > ssl.pem 下列不在你配置文件中的字段添加上。server_name 为你自己的域名. ssl.pem path: /etc/nginx/cert/ssl.pem ssl.key path: /etc/nginx/cert/ssl.key server { list...

    Nginx 2021年09月10日 61 1
  • springcloud实践二:gateway网关详解

    微服务框架当前大行其道,网关在微服务架构中是一个非常重要的部分,网关一般作为项目的统一请求入口提供给前端开发人员,前端开发人员不用知道每个微服务的请求地址。网关可以统一对所有请求做过滤、限流、负载均衡、监控等处理,而不必在每个微服务项目重复处理请求。网关配合注册中心也可以很好的实现微服务的动态扩容,只需要在网关将请求路由转发到注册中心的微服务上即可,由注册中心进行负载均衡处理。...

    SpringCloud 2021年09月09日 75 0
  • tengine主动健康检查如何安装

    Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很 多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检 验。1、在官网下载Tengine。 http://tengine.taobao.org/download/tengine-2.3.3.tar.gz 目前最新的稳定版本是 2.3...

    Nginx 2021年09月09日 61 0
  • 低带宽环境下的物联网传输协议——MQTT

    MQTT是什么MQTT由IBM公司开发,是一个即时通讯协议,也是一个物联网传输协议,主要用于轻量级的订阅/发布式的消息传输。其设计目的主要是为低带宽和不稳定网络环境下的物联网设备提供服务。MQTT中的概念订阅(Subscribtion): 订阅包含主题筛选器(Topic Filter)和最大服务质量(QoS)。订阅会与一个会话(Session)关联。一个会话可以包含多个订阅。每...

    物联网 2021年09月09日 61 0
  • 实践:把Springboot项目配置迁移至 Apollo 配置管理中心

    导读:由于配置日益增多不方便管理且期望配置修改实时生效,因此笔者决定部署一个配置中心,经过分析对比之后决定采用携程开源的 Apollo 配置管理中心。本文分享笔者基于 Apollo 提供 quick start 搭建服务端,并将一个多环境配置的 Springboot 项目迁移至 Apollo 的实践,希望对各位熟悉 Apollo 有所帮助。本地部署 Apollo为了方便用户体验...

    SpringBoot 2021年09月09日 63 0
  • 搞懂现代Web端即时通讯技术一文就够:WebSocket、socket.io、SSE

    1、引言有关Web端即时通讯技术的文章我已整理过很多篇,阅读过的读者可能都很熟悉,早期的Web端即时通讯方案,受限于Web客户端的技术限制,想实现真正的“即时”通信,难度相当大。传统的Web端即时通讯技术从短轮询到长连询,再到Comet技术,在如此原始的HTML标准之下,为了实现所谓的“即时”通信,技术上可谓绞尽脑汁,极尽所能。自从HTML5标准发布之后,WebSocket这类...

    HTML5 2021年09月09日 64 0
  • 再见 Shiro!权限认证我选择 Sa-Token:简单、优雅

    Sa-Token 介绍Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、Session会话、单点登录、OAuth2.0、微服务网关鉴权 等一系列权限相关问题。Sa-Token 的 API 设计非常简单,有多简单呢?以登录认证为例,你只需要:// 在登录时写入当前会话的账号id StpUtil.login(10001); // 然后在需要校验...

    Java 2021年09月09日 101 0
  • PHP关于获取时间的方法

    1、时间转换函数 date("Y-m-d H:i:s",$time);2、获取当天凌晨时间戳 $todaytime=strtotime("today");3、获取明天时间 strtotime("+1 day");4、获取昨天时间 strtotime("-1 day");5、获取下周时间 strtotime("+1 w...

    PHP 2021年09月01日 90 0
  • MySQL数据库大森林:B树、B+树、二叉树、红黑树

    1、二叉树:每个节点最多只有两个子树的树结构2、B树和B+树2.1、区别1)B+树只有叶子节点会存储指针,B树所有节点都带2)B+树叶子节点存储了所有数据,B树在内部节点出现的数据不会出现在叶子节点3)B+树所有叶子节点都是通过指针连在一起,B树不是2.2、B+树优点1)内部节点不存储指针,使得一个内部节点中可以容纳更多的数据2)叶子节点通过指针连在一起范围扫描很方便,B树就要...

    MySQL 2021年09月01日 95 0
  • 平台的多租户设计

    1、用户、应用和机构是三个独立的对象,在平台上注册用户跟机构没有关系,同一个身份证号码在平台上只能创建一个用户。在平台上创建应用跟机构也没有关系在平台上注册新机构后,可以往机构添加人员,比如医院把院内的医生、护士、药师等人员添加到本机构,这样医生用户登录的时候如果身份证号码存在本机构人员中,这样医生就可以选择进入此机构,这样多点医生执业的场景就能完美解决。可以往机构安装应用,然...

    架构设计 2021年09月01日 86 0
  • JAVA中直接用Jdbc就能操作数据库了,为什么还要用spring框架?

    不过随着业务的扩展,你就会发现jdbc建立一个连接居然要几百毫秒,而执行一个普通的SQL仅仅需要几毫秒。这么重量级的资源建立了就释放了不合适,得找个容器存起来,谁要就来取,不用了就还给容器,毕竟容器里的借取比建立一个连接要快的多。这样的容器叫做数据连接池。小日子继续过,业务也越做越大,慢慢地你就发现了:这jdbc的接口也太粗暴了,有一大半的代码在往bean里塞数据,下标还是从1...

    Java 2021年09月01日 96 0
  • netty系列之:自建客户端和HTTP服务器交互

    简介上一篇文章,我们搭建了一个支持中文的HTTP服务器,并且能够从浏览器访问,并获取到相应的结果。虽然浏览器在日常的应用中很普遍,但是有时候我们也有可能从自建的客户端来调用HTTP服务器的服务。今天给大家介绍如何自建一个HTTP客户端来和HTTP服务器进行交互。使用客户端构建请求在上一篇文章中,我们使用浏览器来访问服务器,并得到到了响应的结果,那么如何在客户端构建请求呢?net...

    Linux 2021年09月01日 86 0
  • DDD深入浅出

    为什么我们要了解ddd?作为一个开发者,我们肯定接手过其他的人的项目。我想你一定有个这样的经历:面对冗杂的系统,模块彼此关联,没有人能描述清楚每个细节,没有文档,即使有文档也和系统对不上。当新需求需要修改一个功能时,往往光回顾该功能涉及的流程就需要很长时间,更别提修改带来的不可预知的影响面。于是 RD 就加开关,小心翼翼地切流量上线,一有问题赶紧关闭开关。面对此般场景,你要么跑...

    架构设计 2021年08月31日 98 0
  • Java教程:Java Float类

    Float类在对象中包装了一个基本类型float的值。Float类对象包含一个float类型的字段。此外,该类提供了多个方法,能在float类型与String类型之间互相转换,同时还提供了处理float类型时比较常用的常量和方法。Float类的构造方法Float类中的构造方法有以下3个。Float(double value):构造一个新分配的Float对象,它表示转换为floa...

    Java 2021年08月31日 81 0
  • 高并发,你真的理解透彻了吗?

    高并发,几乎是每个程序员都想拥有的经验。原因很简单:随着流量变大,会遇到各种各样的技术问题,比如接口响应超时、CPU load升高、GC频繁、死锁、大数据量存储等等,这些问题能推动我们在技术深度上不断精进。在过往的面试中,如果候选人做过高并发的项目,我通常会让对方谈谈对于高并发的理解,但是能系统性地回答好此问题的人并不多。大概分成这样几类:1、对数据化的指标没有概念:不清楚选择...

    MySQL 2021年08月31日 96 0
  • Vuex 学习笔记

    1.1 vuex的核心概念State (驱动应用的数据源)Mutation (以声明方式将 state 映射到视图)Action(响应在 view 上的用户输入导致的状态变化)Getter (对 Store 中的数据进行加工处理形成新的数据)1.1.1 Startstart 提供唯一的公共数据源,所以共享的数据要统一放到Store 的 Stare 中进行存储。// 创建 sto...

    Vue 2021年08月31日 99 0
  • 微软终于放弃了Electron了

    微软最近宣布,他们的 Teams 活跃用户已经达到了惊人的 2.5 亿。不是 Word 或 Excel,而是 Teams,它是Microsoft Office 套件的摇滚明星。但是,它一直受到性能问题的困扰,因为它消耗了大量的系统资源。在内存较少的计算机上运行 Teams 是一场噩梦。微软 Teams 的高级副总裁宣布,Teams 将转向他们自己的 Edge Webview2 ...

    技术文章 2021年08月31日 168 0
  • 基于 Mysql 实现一个简易版搜索引擎

    前言前段时间,因为项目需求,需要根据关键词搜索聊天记录,这不就是一个搜索引擎的功能吗? 于是我第一时间想到的就是 ElasticSearch 分布式搜索引擎,但是由于一些原因,公司的服务器资源比较紧张,没有额外的机器去部署一套 ElasticSearch 服务,而且上线时间也比较紧张,数据量也不大,然后就想到了 Mysql 的全文索引。简介其实 Mysql 很早就支持全文索引了...

    MySQL 2021年08月31日 92 0
  • MySQL 时间类型 datetime、bigint、timestamp选哪个?很多人答错了

    数据库中可以用datetime、bigint、timestamp来表示时间,那么选择什么类型来存储时间比较合适呢?前期数据准备通过程序往数据库插入50w数据数据表:CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `time_date` datetime NOT NULL, `time_time...

    MySQL 2021年08月31日 90 0
  • 点击查看更多