前言 上篇手把手教你实现一个支持插件化的 uTools 工具箱我们介绍过了如何通过 electron 实现 utools 的插件功能体系,并按照 utools 的交互和设计做出了一套可以支持插件化的桌面端工具箱 Rubick. Rubick 源码 本篇将继续为大家介绍如何再基于 electron 实现 utools 的搜索能力. 搜索能力实现 utools 搜索核心分为系统命令.插件命令.系统app功能搜索等几大类,下面我们来一一实现这3类功能的检索能力. 由于这 3 类搜索搜索出来的内容点击触…
我们使用 Spring Boot,基本上都是沉醉在它 Stater 的方便之中.Starter 为我们带来了众多的自动化配置,有了这些自动化配置,我们可以不费吹灰之力就能搭建一个生产级开发环境,有的小伙伴会觉得这个 Starter 好神奇呀!其实 Starter 也都是 Spring + SpringMVC 中的基础知识点实现的,今天松哥就来带大家自己来撸一个 Starter ,慢慢揭开 Starter 的神秘面纱! 核心知识 其实 Starter 的核心就是条件注解 @Conditional…
来源:https://juejin.im/post/5c4481a4f265da613438aec3 之前在牛逼哄哄的 RPC 框架,底层到底什么原理得知了RPC(远程过程调用)简单来说就是调用远程的服务就像调用本地方法一样,其中用到的知识有序列化和反序列化.动态代理.网络传输.动态加载.反射这些知识点.发现这些知识都了解一些.所以就想着试试自己实现一个简单的RPC框架,即巩固了基础的知识,也能更加深入的了解RPC原理.当然一个完整的RPC框架包含了许多的功能,例如服务的发现与治理,网关等等.本…
总要说两句 前两篇讲到了地图的基础显示和地图类型,今天来记录下高德地图交互相关的设置.地图的绘制分很多层,层级的显示需要根据不同的场景来设置.地图的触摸事件也很丰富,有单击.双击.单指拖拽.双指拖拽.双指旋转.双指缩放等,高德提供了api来设置这些用户交互. 除了这些设置外,还包含地图截图,这也算是用户交互.好了,废话不多说,开始今天的Android高德之旅,筒子们,老司机要开车了,上车吧. (博客中所有的gif都是确定没问题的,如果在你的浏览器中看不了,就把gif下载下来看) 开车 先来看一张…
相信普通的vue组件大家都会写,定义 -> 引入 -> 注册 -> 使用,行云流水,一气呵成,但是如果我们今天是要自定义一个弹窗组件呢? 首先,我们来分析一下弹窗组件的特性(需求): 0. 轻量 –一个组件小于 1Kib (实际打包完不到0.8k) 1. 一般都是多处使用 –需要解决每个页面重复引用+注册 2. 一般都是跟js交互的 –无需 在<template>里面写 <toast :show="true" text="弹窗消息"…
总要说两句 今天继续我们的Android高德之旅,上一篇已经能够显示最主要的地图了.有主要的放大缩小功能.还有最后做的点击3D旋转.倾斜视角的效果.今天这篇文章来记录一下高德地图的5种地图类型. (其实是4种类型,加上离线地图) 5种地图类型各自是: 常规地图模式(又称行政地图模式) 卫星地图模式 导航地图模式 夜间地图模式 离线地图模式(我是混进来的充数的) 这5种地图模式在不同的场景下使用,各有优点. 普通模式是默认的模式.展示地名.交通主干道.简单的地形.河流等.用的也是最多的:导航模式会…
负载均衡器在 Web 架构中扮演着非常重要的角色,被用于为多个后端分发流量负载,提升服务的伸缩性.负载均衡器后面配置了多个服务,在某个服务发生故障时,负载均衡器可以很快地选择另一个可用的服务,所以整体的服务可用性得到了提升. 自研负载均衡器的工作原理   负载均衡器在向后端服务分发流量负载时可以使用几种策略. 轮询(Round Robin)——均匀地分发流量负载,假设所有后端服务都具有同样的处理能力: 加权轮询(Weighted Round Robin)——根据后端服务的处理能力加权: 最少连接…
原文地址: https://juejin.im/post/5dd296c0e51d4508182449a6 前言 有这个想法的缘由是前一阵子突发奇想, 想尝试能不能直接利用js连接到zookeeper, 从而获取到dubbo的注册信息. 后来一番查找资料后, 发现由于纯js不支持tcp socket通讯, 所以纯js是无法实现的. 但是发现有些大神却使用nodeJs实现zk的客户端. 这就成功地激起了我的兴趣. 简单地研究了一下zk通信协议后, 我开始尝试徒手撸一个zk的客户端.当然是用java…
你们之中大概率早已练就了代码的拷贝.粘贴,无敌的码农神功,其实做久了业务功能开发,练就这两个无敌神功,那是迟早的事儿.今天先抛一个小问题,来打通你的任督二脉,就是很好奇的问一下:业务功能开发中,输入参数校验占了你多少时间呢?有没有考虑如何进行验证模块化.通用化? 咱们还是换个问法,看看元芳怎么看.“到底该如何保证业务 API 的健壮性”,元芳你怎么看类? 关注“一猿小讲”久了的元芳,多多少少都有点进步,所以不加思索的答到:首先要保证 API 输入参数的校验:然后…… 听到“首先要保证 API 输…
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 为什么我们要去造轮子? 造轮子的核心目的,是为了解决通用共性问题的凝练和复用. 虽然市面上已经有了大量成熟稳定用于支撑系统建设的轮子,也就是服务.框架.组件.工具等,但对于一些较大型的公司来说,这些轮子可能并不一定能很好的支撑起系统需要承载的服务体量,这个时候就需要自建一些轮子. 而提倡的不重复造轮子,新造轮子不一定能保证稳定性.一般用在以官网推出的核心轮子上是适合的,比如 Spr…