2019-11-27 16:05
一、背景地图App的功能可以简单概括为定位,搜索,导航三部分,分别解决在哪里,去哪里,和怎么去的问题。高德地图的搜索场景下,输入的是,地理相关的检索query,用户位置,App图面等信息,输出的是,用户想要的POI。如何能够更加精准地找到用户想要的POI,提高满意度,是评价搜索效果的最关键指标。...
2019-11-27 16:00
作者:
刘洋(炎寻) EDAS-OAM 架构与开发负责人
邓洪超 OAM spec maintainer
孙健波(天元) OAM spec maintainer
随着以 K8s 为主的云原生基础架构遍地生根,越来越多的团队开始基于 K8s 搭建持续部署、自助式发布体验的应用管理平台。然而,在 K8s 交付和管理应用方面,目前还缺乏一个统一的标准,这最终促使我们与微软联合推出了首个云原生应用标准定义与架构模型 - OAM。本文作者将从基本概念以及各个模块的封装设计与用法等角度出发来详细解读 OAM。
...
2019-11-27 15:25
之前写过一篇:自己动手实现分布式任务调度框架本来是用来闲来分享一下自己的思维方式,时至今日发现居然有些人正在使用了,本着对代码负责人的态度,对代码部分已知bug进行了修改,并增加了若干功能,如立即启动,实时停止等功能,新增加的功能会在这一篇做详细的说明。
提到分布式任务调度,市面上本身已经有一些框架工具可以使用,但是个人觉得功能做的都太丰富,架构都过于复杂,所以才有了我重复造轮子。个人喜欢把复杂的问题简单化,利用有限的资源实现竟可能多的功能。因为有几个朋友问部署方式,这里再次强调下:我的这个服务可以直接打成jar放在自己本地仓库,然后依赖进去,或者直接copy代码过去,当成自己项目的一部分就可以了。也就是说跟随你们自己的项目启动,所以我这里也没有写界面。下面先谈谈怎么基于上次的代码实现任务立即启动吧!
...
2019-11-27 15:52
在面向对象编程中,有一条非常经典的设计原则,那就是:组合优于继承,多用组合少用继承。为什么不推荐使用继承?组合相比继承有哪些优势?如何判断该用组合还是继承?为什么不推荐使用继承?...
2019-11-27 15:02
说到 pipe 大家可能都不陌生,经典的pipe调用配合fork进行父子进程通讯,简直就是Unix程序的标配。
然而Solaris上的pipe却和Solaris一样是个奇葩(虽然Solaris前途黯淡,但是不妨碍我们从它里面挖掘一些有价值的东西),
有着和一般pipe诸多的不同之处,本文就来说说Solaris上神奇的pipe和一般pipe之间的异同。
1.solaris pipe 是全双工的
一般系统上的pipe调用是半双工的,只能单向传递数据,如果需要双向通讯,我们一般是建两个pipe分别读写。像下面这样:
...
2019-11-27 15:33
一、摘要在集合系列的第一章,咱们了解到,Map 的实现类有 HashMap、LinkedHashMap、TreeMap、IdentityHashMap、WeakHashMap、Hashtable、Properties 等等。...
2019-11-27 15:59
1、 实验原理
以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性。其缺点是同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户不能直接互相通信。在现实中,经常会出现某些用户需要跨越VLAN实现通信的情况,单臂路由技术就是解决VLAN间通信的一种方法。
单臂路由的原理是通过一台路由器, 使VLAN间互通数据通过路由器进行三层转发。如果在路由器上为每个VLAN分配一个单独的路由器物理接口,随着VLAN数量的增加,必然需要更多的接口,而路由器能提供的接口数量比较有限,所以在路由器的一个物理接口上通过配置子接口(即逻辑接口)的方式来实现以一当多的功能,将是一种非常好的方式。路由器同一物理接口的不同子接口作为不同VLAN的默认网关,当不同VLAN间的用户主机需要通信时,只需将数据包发送给网关,网关处理后再发送至目的主机所在VLAN,从而实现VLAN间通信。由于从拓扑结构图上看,在交换机与路由器之间,数据仅通过一条物理链路传输,故被形象地称之为“单臂路由”。
...
2019-11-27 15:44
之前的系列文章从 CPU 和内存方面简单介绍了一下汇编语言,但是还没有系统的了解一下汇编语言,汇编语言作为第二代计算机语言,会用一些容易理解和记忆的字母,单词来代替一个特定的指令,作为高级编程语言的基础,有必要系统的了解一下汇编语言,那么本篇文章希望大家跟我一起来了解一下汇编语言。
汇编语言和本地代码
我们在之前的文章中探讨过,计算机 CPU 只能运行本地代码(机器语言)程序,用 C 语言等高级语言编写的代码,需要经过编译器编译后,转换为本地代码才能够被 CPU 解释执行。
但是本地代码的可读性非常差,所以需要使用一种能够直接读懂的语言来替换本地代码,那就是在各本地代码中,附带上表示其功能的英文缩写,比如在加法运算的本地代码加上add(addition) 的缩写、在比较运算符的本地代码中加上cmp(compare)的缩写等,这些通过缩写来表示具体本地代码指令的标志称为 助记符,使用助记符的语言称为汇编语言。这样,通过阅读汇编语言,也能够了解本地代码的含义了。
...
2019-11-27 15:07
下面分享关于位操作的一些笔记:一、位操作简单介绍...
2019-11-27 15:35
上一章说了如何制作一个线路图,当然上一章是手写的JSON数据,当然手写的json数据有非常多的好处,例如可以应对客户的各种BT需求,但是大多数情况下我们都是使用地铁公司现成的JSON文件,话不多说我们先看一下百度官方线路图。
就是这样的,今天我们就来完成它的大部分需求,以及地铁公司爸爸提出来的需求。
需求如下:
1.按照不同颜色显示地铁各线路,显示对应站点。
2.用户可以点击手势缩放和平移(此项目为安卓开发)。
3.用户在线路menu里点击线路,对应线路平移值屏幕中心并高亮。
4.根据后台数据,渲染问题路段。
...
2019-11-27 15:29
在开发功能“轨迹播放”时,遇到了一个情况。
原先同事已经开发了一版,这次有个新功能:点击线上任意一点后可以从点击处重新播放。
看了一下原来的版本,发现同时使用了setTimeout和setInterval,两者配合实现点线播放。
简单结构如下
function test() {
setInterval(function () {
console.log("interval");
//省略插值方法得到arr
...
2019-11-27 15:01
范式的定义关系型数据库中的关系是需要满足一定条件的,满足这些不同程度的规范化就叫做范式。范式按照规范化程度从低到高排序为第一范式,第二范式,第三范式,BC范式,第四范式,第五范式。前导知识函数依赖R(U)是属性集U的关系模型,X,Y是U的一个子集,对于R(U)中的任一个关系r,不可能存在两个元组在X上属性值相同,而在Y上属性值不同。则称X函数确定Y,或Y函数依赖X。说人话:U是表(可能
2019-11-27 14:32
本项目演示如何使用 Spring Cloud Alibaba 完成 Dubbo 的RPC调用。
Spring Cloud与Dubbo
Spring Cloud是一套完整的微服务架构方案
Dubbo是国内目前非常流行的服务治理与RPC实现方案
由于Dubbo在国内有着非常大的用户群体,但是其周边设施与组件相对来说并不那么完善(比如feign,ribbon等等)。很多开发者使用Dubbo,又希望享受Spring Cloud的生态,因此也会有一些Spring Cloud与Dubbo一起使用的案例与方法出现。
...
2019-11-27 14:55
Matplotlib是一个用Python实现的绘图库。现在很多机器学习,深度学习教学资料中都用它来绘制函数图形。在学习算法过程中,Matplotlib是一个非常趁手的工具。一般概念...