- 博客(503)
- 资源 (17)
- 收藏
- 关注
原创 [Kubernetes]浅谈Traefik基础与转发原理
Traefik作为一种边缘路由器,可以作为类似Nginx的反向代理服务器使用。它与Nginx的最主要区别,在于它可以动态的感知后端服务实例的变化,从而进行动态调整转发配置。Traefik除了可以单独部署运行,也可以很方便的与Docker, Kubernetes等类型的集群集合。在Kubernets中部署Traefik,它的转发原理和各种端口的关系如下所示:...
2019-12-03 17:49:18
2728
1
原创 [Docker]四种网络模式之bridge模式
现在来聊聊Docker网络的桥接模式.bridge模式原理Docker的默认网络配置下用的是bridge模式,此模式会给每个新创建的容器分配独立的Namespace,IP段等,同时文件系统/进程等也是隔离的. 另外它会将对应容器的网络接到某个指定的虚拟网桥(比如启动Docker服务时默认创建的docker0)上.bridge模式的特点1)处于该模式的容器和宿主机网络不在同一个...
2019-12-01 17:33:22
1962
1
原创 Ubuntu18.04安装最新稳定版nodejs
在Ubuntu上安装最新稳定版nodejs时走了些弯路,因为发现执行了这个步骤添加ppa后没有生效,依然安装的时v8.10版本, 具体原因没有去深究。curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -sudo apt-get install -y nodejsnode -v#v8.10.0既然安装了旧版node...
2019-11-27 10:55:59
2189
原创 有意思的开源之webG流体模拟
活捉到一个有意思的项目:https://github.com/PavelDoGreat/WebGL-Fluid-Simulation除了webGL的功效,大神对于数学公式也是玩的6。啥都不说了,分享,学习。
2019-11-25 23:53:19
2836
原创 【OpsDev】解决mac下ssh空闲一段时间自动断开的问题
在macbook中使用终端, 通过ssh连接上远程服务器后, 隔一段时间没有数据传递时会自动断开,而表象就是终端会卡着无响应,要等几分钟后才会显示断开并且返回到本地终端命令行。这个问题太影响流畅性和心情, 决定修一修。第一种方法, 在本地或者远程服务器修改ssh配置, 定时发起类似心跳的信号。在服务器中的/etc/ssh/sshd_config中去掉原有注释并改成这样:ClientAli...
2019-11-24 16:49:09
370
原创 比word更适合编写方案文档的工具Latex
用了一小段时间的latex,现在来小结一下。Latex是啥Latex是一种排版系统,也是一种文档语法。通过Latex编辑工具(比如TexStudio)可以将latex版的原文转换成pdf等格式的文档。关于Latex语法,入门难度不大,类似于markdown,用约定的标记符号去表达你想要的排版格式。Latex的优点先说说对于word,latex在编写项目方案文档方面的优点。可以直接生成p...
2019-11-24 16:39:45
1321
原创 [ES6]export与export default的区别
export 与import是es6中新增模块功能重要的, 并且目前也是很常用的两个用法。现在来看看export和export default两者之间的区别。exportexport 适用于函数(function)/类(class)/常量(const)等我们在导入引用时, 需要加上大括号{}示例如下:// a.example.tsexport class A {// ...}...
2019-11-14 00:00:34
579
原创 [Ionic]如何配置请求proxy
在开发阶段, 我们的前端和后端可能分别运行在同一台机器的不同端口或同一个局域网内的不同ip上, 前端访问后端api时就会碰到跨域的场景.这个时候我们可以通过在Augular中设置proxy来解决这个CrossDomain问题.当然在之后正式发布时, 一般通过后端web服务器(如nginx)或后端代码配置来实现跨域控制.以下是在Ionic/Angular中设置proxy代理的参考步骤:(1)...
2019-11-12 09:42:11
2282
3
原创 [Ionic]JSON.parse后类对象方法丢失问题
现有一个类如下:export class User { username: string; password: string; expired: boolean; isExpired() { return this.expired; }}假如我们这样来使用一下:const a = new User();a.isExpired();const b = JS...
2019-11-11 23:59:31
2098
1
原创 [Ionic]Angular应用的加载过程
本文总结一下Angular应用的加载过程大概是怎样的。1)angular.json{// ... "projects": { "app": {// ... "architect": { "build": { "builder": "@angular-devkit/build-angular:browser", ...
2019-11-10 15:49:41
878
原创 [Ionic]从代码打包到代码部署
简单总结一下Ionic项目的手动打包与发布流程:typescript/angular/ionic的关系Typescript: 是javascript的超集,也即包含了javascript所有的元素,同时它也是面向对象编程语言;Angular: 除了AngularJs(1.0), 当前新版的angular是基于typescript构建的一个web前端框架;Ionic: Ionic默认是...
2019-11-10 13:20:17
473
原创 [Threejs]2D与3D场景间的交互问题(2)
由于一直没能解决上篇文章提到的编译问题, 只好使用了另外一个js库interact来替代.具体用法如下:通过npm安装interactnpm install interactjs@next --save// + interactjs@1.4.0-rc.13// added 13 packages in 13.036s具体代码逻辑示例如下import interact from...
2019-11-07 15:47:50
992
原创 [Threejs]2D与3D场景间的交互问题(1)
应用场景: 从2D画布中拖拽一个元素进入3D画布区域, 触发一个事件,比如在3D场景中添加相应的模型对象.可以通过@shopify/draggable库来实现改功能:通过npm安装js库npm install @shopify/draggable --save具体实现代码示例如下:import { Draggable } from '@shopify/draggable';...
2019-11-07 15:33:56
1734
原创 [Threejs]如何通过DragControls/TransformControls实现对象拖动效果
通过DragControls可以实现鼠标拖动三维模型的效果.DragControls的事件注册具体示例代码如下:// 基于r109// import { DragControls } from 'three/examples/jsm/controls/DragControls';// const objects: Object3D[] = ...this.dragControls =...
2019-10-30 13:49:58
5478
15
原创 [Threejs]三种坐标系位置数据的转换
webGL中主要有6种坐标系.接下来看看如何在以下三种坐标系之间进行坐标数据的转换:屏幕坐标系,标准坐标系,世界坐标系.屏幕坐标系和标准设备坐标系先来了解一下这两个坐标系的定义,具体如下图所示:屏幕坐标系的起始点(0,0)在左上角,而标准坐标系的起始点在canvas中心处.假设3D画布的大小填满window假如我们要通过鼠标来操控3D画布内的场景对象,需要将鼠标的坐标位置转换为3...
2019-10-29 09:23:40
11271
原创 解决blender导出带动画的GLTF模型变形问题
在blender里面给3d模型加了NLA(非线性动画),结果导出gltf/glb格式文件之后在threejs运行会出现变形的问题,效果如下:为了解决这个问题,我们需要在导出时把以下选项给勾上,具体如下:这个选项会给每一帧动画添加一个shapekey,因此也会让模型文件体积变得很大.勾上之后的效果如下:动画相关问题的讨论也可以参考github上的这个issue:https://gith...
2019-10-23 09:46:48
7879
3
原创 [Threejs]Object3d对象如何获取指定名字的子元素?
现有的获取对象的方法getObjectById()根据指定的id获取对应的对象,总是返回第一个匹配到的对象getObjectByName()根据指定的name获取对应的对象,总是返回第一个匹配到的对象getObjectByProperty()根据指定的属性(键值对)获取对应的对象,总是返回第一个匹配到的对象其实getObjectById和getObjectByName的方...
2019-10-22 14:50:49
6512
原创 [Threejs]关于threejs入门的几点知识
关于threejs版本的问题threejs新旧版本之间的兼容性貌似不太好,几个月前能用的方法现在可能就用不了,当前最新的版本号为r106.如果你用到一些不在标准库three里的接口,一般在three-full里面都可以找到.其他一些非官方的库,特别是那些一年半载甚至更久没有更新的库,最好就不用考虑使用了,因为很可能用不了.关于画线的问题画线的过程中,很容易出现不正常显示等一些诡异的问题,...
2019-07-17 09:41:46
908
原创 hbase常用操作
启动hbase集群#cd <HBASE_HOME>./bin/start-hbase.sh关闭hbase集群#cd <HBASE_HOME>./bin/stop-hbase.sh启动restAPI服务 (指定端口)#cd <HBASE_HOME>./bin/hbase-daemon.sh start rest -p 20550...
2019-05-28 14:45:33
252
原创 微服务开发之反向代理traefik
traefik是微服务架构里常用的一种反向代理.相对于nginx, traefik最大的区别是支持动态配置路由的.也就是每当你的微服务经历新启动、移除、停止或更新时都会被感知,并且可以自动更新对应的配置文件.以下简单说明下通过docker-compose来启动traefik的流程.首先创建一个专有网络(让traefik和所有需要反向代理的微服务在同一个网络中)docker network...
2019-05-06 14:17:44
1331
原创 ubuntu18单机部署k8s(v1.14.1)
1.准备工作关闭防火墙sudo ufw disable关闭系统swapsudo swapoff -a安装docker建议版本: docker-ce-18.0x2.准备k8s安装环境下载并添加Kubernetes安装的密钥sudo apt update && sudo apt install -y apt-transport-https cur...
2019-05-06 13:38:56
4603
8
原创 android studio之无限scan files into index的一种解决方法
启动android studio后,IDE一直卡在Loading project的 scan files into index过程。试了很多参考方法不行,强制关掉IDE后,去到工程根目录通过命令行执行build命令:./gradlew build构建成功的会类似提示:BUILD SUCCESSFUL in 33s116 actionable tasks: 42 executed, 74...
2019-03-19 15:16:22
3242
1
原创 Ionic4基于Angular实现自定义component的事件触发
假设parent.page.html里内嵌了自定义组件child.component.html,我们可以通过EventEmitter和Output模块来实现事件的触发。child.component.tsimport { Component, EventEmitter, Output } from '@angular/core'; @Component({ selector:...
2019-03-08 16:35:54
1131
1
原创 关于ionic4中crosswalk不起作用
ionic4加入插件crosswalk后,忽然又不起作用了,在android5/6中启动时都显示白屏。折腾了几种方法,目前只有以下方法有效,就是把src/polyfills.ts中 es6的注释都去掉:/** * This file includes polyfills needed by Angular and is loaded before the app. * You can ad...
2019-02-27 09:36:49
1283
1
原创 ionic4之自定义component的使用事项
自定义了一个component, 结果在其他页面引用时报了错:'xxx' is not a known element.之前使用自定义的component倒是正常的。排查了代码,发现是非懒加载页面的方式引起的。以前通过lazyload来加载一个页面时,一般这样: { path: 'test', loadChildren: '../x/xx/xxx.module#XXXPageModule...
2019-02-12 14:43:55
2479
原创 ionic4之android系统兼容性问题
由于官方插件ordova-ionic-web-view 2.x.x只能在android7.1+以上的系统正常运行,所以一般这样打包出来的apk在更早之前的android系统中运行时会出现白屏的情况。一种解决方法:使用crosswalk代替ordova-ionic-web-view ionic build ionic cordova platform add android cordov...
2019-01-23 11:49:08
4768
3
原创 ionic4之lazyloading加载页面异常的问题
不使用lazyloading的情况下, 页面是可以正常加载显示的。加了嵌套的lazyloading后,页面反而变空白了。查看具体html具体元素后,发现多了一个样式空白的ng-component:加载异常的页面代码是这么定义的:home.page.html&amp;lt;ion-content class=&quot;home-content&quot;&amp;gt; &amp;lt;!-- 具体的组
2019-01-21 14:47:33
1269
原创 matlab Runtime R2017b在centos7中部署运行的问题
Matla Runtime R2017b在Centos7.5.1804版本中是会报错的,报错信息如:------------------------------------------------------------------------ std::terminate() detected at Mon Dec 10 08:40:05 2018------------...
2018-12-10 12:28:19
2147
2
原创 Docker快速部署Ceph测试集群
本文记录了通过docker快速部署小规模Ceph集群的流程,可用于开发测试环境。# 1. 创建Ceph专用网络docker network create --driver bridge ceph-networkdocker network inspect ceph-network# 2. 删除旧的ceph相关容器docker rm -f $(docker ps -a | grep cep...
2018-11-20 23:31:49
2158
4
原创 关于Linux下端口转发规则失效问题
机器重启后,发现已有iptables的端口转发规则都已经失效,通过iptables -t nat -L查看规则都是存在的,但就是无法进行转发。再检查ip_forward功能,发现被还原为0了:#cat /proc/sys/net/ipv4/ip_forward0可判定是重启之前的转发设置没有持久化,而linux默认是关闭这项功能的,因此重新进行了永久生效的配置:echo 1 &gt; /...
2018-11-14 16:09:33
5553
原创 【Kubernetes】Filebeat以sidecar模式实现容器日志收集
说明Filebeat可以以sidecar模式来进行容器日志的收集,也就是filebeat和具体的服务容器部署在同一个pod内,指定收集日志的路径或文件,即可将日志发送到指定位置或Elasticsearch这类的搜索引擎。每个pod内部署filebeat的模式,好处是和具体的应用服务低耦合,可扩展性强,不过需要在yaml进行额外配置。yaml示例# app服务---apiVersion:...
2018-11-13 09:15:16
8319
10
原创 【Kubernetes】traefik代理重定向302过多问题
问题描述通过traefik添加了服务域名代理,如:apiVersion: extensions/v1beta1kind: Ingressmetadata: name: common-service namespace: default annotations: kubernetes.io/ingress.class: traefikspec: rules: -...
2018-11-09 11:15:08
2594
原创 关于Gitlab10迁移用户
因为已有的gitlab服务有些问题,现在在新的服务器上新搭建了一个gitlab11服务。暂时不需要迁移项目相关内容,只想把所有已有的账号给挪过去。一时半会没找到如何只迁移gitlab上的账号(项目,issue什么的不作迁移)的合适方法,故自己先用手工的方法解决了。该方法未经严格验证,请谨慎参考(1)把旧的gitlab上postgresql的相关表给导了出来,导为csv格式文件,一共三个表:...
2018-10-26 11:19:03
3154
原创 基于kubernetes1.11安装Harbor私有镜像库(四)
简介本节主要说明如何安装,配置及运行harbor私有库。获取Harbor 1.6源git clone -b release-1.6.0 https://github.com/goharbor/harbor.git修改harbor.cfg# cd harbor/make# vim harbor.cfg# 主要修改以下几项:hostname = hub.example.com # ...
2018-10-21 18:32:29
506
原创 基于kubernetes1.11安装Harbor私有镜像库(三)
简介上一篇说明了如何配置运行traefik服务,本篇将会说明如何让traefik支持https请求的转发。配置traefik-HTTPS用ssl证书创建secret这里忽略关于如何创建ssl证书的过程,你可以创建新的或使用已有的ssl证书。假设现在已经有ssl.crt,ssl.key文件,并保存在host目录/etc/k8s/ssl/下。k8s中创建一个secret资源,[root...
2018-10-21 16:50:56
486
原创 基于kubernetes1.11安装Harbor私有镜像库(二)
简介Trafik,和nginx-ingress类似,都是用于微服务集群的HTTP/HTTPS代理转发和负载均衡的。相对nginx-ingress来说, Traefik部署更简单,其反向代理和负载均衡功能更直接高效。本节主要说明如何在kubernetes1.11上安装traefik,及配置https转发的流程。安装Traefik下载源安装包[root@kubemaster DevOp...
2018-10-21 13:47:43
639
原创 基于kubernetes1.11安装Harbor私有镜像库(一)
1.简介本文主要记录基于kubernetes1.11版本安装harbor私有镜像库,及配置nginx, traefik的代理及https相关过程。此处harbor采用共享存储(GlusterFS)作为镜像的存储系统。本节首先说明如何在Centos7上安装规模为三个节点的GlusterFS集群。2.安装共享存储(GlusterFS)节点准备节点IP节点Hostname角色...
2018-10-21 12:09:08
620
原创 Nginx如何配置跨域(多个域名)
假设需要允许来源为localhost或.*.example.com下所有二级域名的访问,在nginx中只需要类似这样配置即可: location / { set $match ""; # 支持http及https if ($http_origin ~* 'https?://(localhost|.*\.example\.com)') { ...
2018-10-08 16:40:32
6135
原创 springboot 集成swagger
1. 关于swagger我们撰写的接口文档,有面向内部开发者的,也有面向外部的。很多情况下文档和代码是分离的,有好处也有坏处。而当我们写java项目想偷懒,想要自动生成接口文档时,swagger工具是个不错的选择。在Golang中, godoc时标准化的工具,而java似乎没这么舒服。所以这里借助了swagger第三方工具,swagger是主要用于自动生成restful风格API文档以及方便开...
2018-09-28 14:09:17
394
原创 gitlab与jenkins持续集成的一种途径
环境准备本文主要简要记录gitlab与jenkins的持续集成过程,并通过SSH完成kubernetes应用的自动部署。jenkins所需基本的插件包括:Gitlab Hook Plugin,Gitlab Plugin,Docker Plugin,Publish over SSH等。假设已经安装好了gitlab以及jenkins,构建所需的Docker环境,以及Kubernetes等。...
2018-09-26 11:05:00
1075
C#.net 人事管理系统
2011-05-25
ArmorySDK2002.zip
2020-03-02
google_appengine_1.9.50.7z
2020-03-05
win8应用开发指南(Metro Revealed Building Windows 8 apps with XAML and C#)
2013-01-05
google_appengine_1.9.40.tar.gz
2019-07-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人