- 博客(61)
- 资源 (1)
- 收藏
- 关注
原创 微服务组件
微服务Dubbo与Spring Cloud对比Nacos与Eureka均提供注册中心和服务治理功能,以下为两者差异和选型方案。模块 Nacos Eureka 说明MySql 是 否 Nacos需要采用MySql进行数据进行...
2021-04-02 16:28:25
217
1
原创 P2P通信流程
假设:一台公网服务器S,一台内网主机A及其路由器NAT-A,另一台内网主机B及其路由器NAT-B,借助S将A和B建立直接的TCP连接,即由B向A打一个洞,让A可以沿这个洞直接连接到B主机,就好像NAT-B不存在一样。实现过程如下:1、S启动两个网络侦听,一个叫【主连接】侦听,一个叫【协助打洞】的侦听。2、A和B分别与S的【主连接】保持联系。3、当A需要和B建立直接的TCP连接时,首先连接S的【协助打洞】端口,并发送协助连接申请。同时在该端口号上启动侦听。注意由于要在相同的网络终端...
2020-08-07 19:13:54
1217
原创 图像和流媒体 -- I 帧,B帧,P帧,IDR帧的区别
参看:什么是I帧,P帧,B帧参看:H264编码原理以及I帧B帧P帧一、H246简介H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中,一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内。所以对于一段变化不大图像画面,我们可以先编...
2020-06-10 15:47:54
1687
原创 远程控制Windows端屏幕流程处理
参考:https://blog.youkuaiyun.com/fanxiushu/article/details/76039801参考:https://blog.youkuaiyun.com/show0925/article/details/6850225第一步:截屏获取屏幕数据,一般是变化的矩形区域图像,也可以是整个屏幕。第二步:对图像数据进行压缩处理,推荐用H265第三步:封装业务操作指令,组包通讯。...
2020-04-17 17:24:15
1131
原创 Java架构
架构的演变,是一步一步来。如果要一步到位,条件允许的情况下,推荐用Spring Cloud微服务。Spring Cloud结合Spring Boot、Feigh、nacos、ribbon、setinel、消息队列等,但是注意下版本号。不想采用上面的那种方案,一般的项目,可以考虑通过nginx来负载均衡,mysql主从同步,或进一步分库分表。最后一种情况,就是把微服务架构缩减,再加上...
2020-04-01 09:46:23
122
原创 python爬虫总结
C++,Java,python等很多语言都可以爬数据,推荐大家用python,理由简单实用。爬虫,根据爬的对象,可以分为爬网页和爬app。相对来说,爬app的难度会大一点,因为熟悉Android和iOS开发的人员少。但不是说,爬网页是很简单的事,这主要看双方的攻防较量。下面说下爬虫的一般流程:第一、锁定一个要爬取的URL,网页可以通过浏览器网络确定,app就需要抓包,详情这边不...
2020-04-01 09:36:48
277
1
原创 Linux 服务器配置与部署操作笔记
grant all PRIVILEGES on yew.* to yekw@’%’ identified by ‘yew’;==============================================Linux 阿里云服务器IP:终端连接password阿里云网站登录密码:服务器登陆密码:备案/许可证编号为:阿里云服务器帮助与文档:http
2017-06-06 11:08:06
1005
转载 web网站架构演变过程
我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变。 该系统具备的功能:用户模块:用户注册和管理商品模块:商品展示和管理交易模块:创建交易和管理阶段一、单机构建网站 网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如tomcat、jetty、jboos,然后直接使用JSP/servlet技术,或者使用一些开
2017-06-06 11:04:17
541
转载 服务端架构演变
高大上的淘宝架构我们以淘宝架构为例,了解下大型的电商项目的服务端的架构是怎样,如图所示上面是一些安全体系系统,如数据安全体系、应用安全体系、前端安全体系等。中间是业务运营服务系统,如会员服务、商品服务、店铺服务、交易服务等。还有共享业务,如分布式数据层、数据分析服务、配置服务、数据搜索服务等。最下面呢,是中间件服务,如MQS即队列服务,OCS即缓存服务等。图
2017-06-06 11:01:44
4600
1
转载 Android 自定义ListView——下拉刷新&上拉加载
转载请注明出处:http://blog.youkuaiyun.com/allen315410/article/details/399653271.简介 无疑,在Android开发中,ListView是使用非常频繁的控件之一,ListView提供一个列表的容易,允许我们以列表的形式将数据展示到界面上,但是Google给我们提供的原生ListView的控件,虽然在功能上很强大,但是在用户体
2017-03-26 22:27:51
333
原创 mac下eclipse安装配置Tomcat服务器
第一步:到官网上下载Tomcat。第二步:文件解压后,使用终端Termina启动Shell,进入文件所在目录,输入./startup.sh,打开浏览器输入localhost:8080, 查看是否安装成功。第三步:打开Eclipse(新的版本Eclipse请选择J2EE版本),打开偏好设置,点击server,选择Runtime Environment,添加tomcat。第四步:选中新建项
2017-03-16 10:20:14
866
转载 AndroidStudio导入项目一直卡在Building 'xxxx' gradle project info
转自:http://www.cnblogs.com/baron89/p/4843113.htmlAndroidStudio导入项目一直卡在Building gradle project info,实际上是因为你导入的这个项目使用的gradle与你已经拥有的gradle版本不一致,导致需要下载该项目需要的gradle版本,不知是被墙了还是什么原因,反正就是会一直卡住,直至
2017-03-15 10:47:47
342
转载 ListView Item高度设置
转载于:http://blog.youkuaiyun.com/coderinchina/article/details/50670505关于listview,做andriod开发都必须知道的,我写了一个简单的adapter,在这不考虑什么缓存机制就单单为了显示一下而已:[java] view plain copy print?public c
2017-03-14 19:24:36
453
原创 Android gravity & layout_gravity,线性布局居右
android:gravity:设置的是控件自身上面的内容位置。android:layout_gravity:设置控件本身相对于父控件的显示位置。线性布局居右:android:gravity ="right"android:layout_weight="1.0"android:layout_width="0dp"
2017-03-14 16:26:51
842
转载 Android Fragment数据传递
1、Activity定义public class Act extends Activity{ private Fragment f1=null; private Fragment f2=null; //定义回调接口 public interface MyCallBack{ void callBack(
2017-03-14 15:26:55
217
转载 android:layout_gravity和android:gravity的区别
转载于http://blog.youkuaiyun.com/shakespeare001/article/details/78434601.首先来看看Android:layout_gravity和android:gravity的使用区别。android:gravity:这个是针对控件里的元素来说的,用来控制元素在该控件里的显示位置。例如,在一个Button按钮控件中设置如下
2017-03-07 14:58:21
208
转载 Android:layout_weight
首先看一下奇怪的的现象:线性布局的情况下,有个非常奇怪的属性——Android:layout_weight,该属性大部分视图控件中都有,它表示视图的重要度或者权重,看看以下两种情况下该属性的使用:(1)水平布局的情况下:(android:orientation="horizontal")第一种情况:设置 android: layout_width="fill_par
2017-02-25 15:50:38
244
原创 Android Studio Plugins
1. GsonFormat 注意从Android Studio-Preference-Plugins-Android Support-search 或启动页上面的configures-Plugins-....2.Android ButterKnife Zelezny下载完,重启Android Studio,直接双击项目下【不是Project下,是Android下】的build.gr
2017-02-18 16:44:03
652
转载 Android Drawable Importer
Android 图标导入插件作者: rain 分类: 移动 发布时间: 2015-01-20 14:18 6 0条评论Android Drawable Importer 是 Android Studio 的一个插件,用来导入图标到项目中的。在 Android module 下右键任意目录,在弹出的菜单中的 New 选项可以使用该插件。该插件有如下几个功能:A
2017-02-18 16:16:23
563
转载 Android version
compiledSdkVersion: 编译SDK版本是将要编译APP的平台版本. 默认情况下它应该设置为SDK中最新的Android可用版本. 我们依然可以编译APP来支持更早的版本, 但是设置它为最新版本让我们可以使用新功能并优化APP使其在最新版本上拥有更好的用户体验.minSdkVersion: 是新建工程的时候指定的”MinimumSDK version”. 它表示APP
2017-02-18 09:46:09
671
转载 PHP Laravel method paginate cannot find
dingo/api - 4.响应1. 默认格式JSON说明:返回的对象需实现 ArrayObject 或 Illuminate\Support\Contracts\ArrayableInterface 接口class UserController{ public function index() { return User:
2017-02-07 16:27:20
850
转载 Xcode清理
转载自http://www.jianshu.com/p/8c633d29cb71此文章仅适用于适用于使用Xcode的开发者。长期不清理Xcode中的一些文件你会发现自己的mac硬盘越来越小,而且是这个其他占了绝大部分的硬盘,在网上搜索了很多办法都没找到如何清理这些其他后来来来回回在文件夹中找发现~/Library/Developer/Xcode这个Xcode文件夹大的惊人,几十
2017-01-22 11:53:56
803
转载 高性能网络编程(一):单台服务器并发TCP连接数到底可以有多少
前言曾几何时我们还在寻求网络编程中C10K问题(有关C10K问题请见文章《The C10K problem(英文在线阅读、英文PDF版下载、中文译文)》)的解决方案,但是现在从硬件和操作系统支持来看单台服务器支持上万并发连接已经没有多少挑战性了。我们先假设单台服务器最多只能支持万级并发连接,其实对绝大多数应用来说已经远远足够了,但是对于一些拥有很大用户基数的互联网公司,往往面临的并
2017-01-17 19:45:39
14217
原创 Laravel架构参考
Modules:https://github.com/caffeinated/modules/wikidingo/api:https://segmentfault.com/q/1010000003043551?_ea=283516后台管理系统和API接口:https://github.com/6ag/jiansan-laravel
2017-01-17 17:50:19
598
原创 PHP Laravel命令行创建
Laravel命令行创建1.创建工程:composer create-project --prefer-dist laravel/laravel blog 2.命令必须在laravel项目根目下下执行,否则 “Could not open input file: artisan”3.显示Lavarel版本 php artisan --version4.列出所有命
2017-01-17 16:54:18
2652
原创 Mac电脑MAMP PRO集成环境Apache启动不了
problem:The build-in Apache is active which can cause a port conflict with at least one of your virtual hosts.answer:sudo apachectl stop
2017-01-11 10:27:19
3478
1
转载 mac 自带 PHP升级配置
mac下更新自带的PHP版本到5.6或7.0 作者 zakariyyaSv 关注2016.06.03 15:40 字数 345 阅读 1916评论 5喜欢 2OS X 10.11自带的PHP版本是PHP 5.5.x,如果我们想更新PHP的版本到5.6或者是7.0该怎么办呢?下载和安装PHP 5.6打开终端并且运行如下命令:curl -s
2017-01-10 17:38:46
2603
原创 iOS runtime
runtime 一般都是针对系统的类,导入头文件 设置build setting中msg开关clang -rewrite-objc main.m 查看最终生成代码cppPerson *p = objc_msgSend(objc_getClass(“Person”), sel_registerName(“alloc”));Person *p = objc_msgSend([Perso
2016-12-12 15:38:41
215
原创 iOS code
UIButton *informationCardBtn = [UIButton buttonWithType:UIButtonTypeCustom]; [informationCardBtn addTarget:self action:@selector(enterehzFilesVC:) forControlEvents:UIControlEventTouchUpInside
2016-12-12 15:37:34
266
原创 蓝牙开发
#import "ViewController.h"#import //2016-11-14 22:54:24.782807 BluetoothRuler[1069:487158] BLE已打开.//2016-11-14 22:54:24.808974 BluetoothRuler[1069:487158] 发现外围设备...//2016-11-14 22:54:24.
2016-12-12 15:35:56
227
原创 PS切图神器
切图利器:http://www.cutterman.cn/zh/cuttermanhttp://www.ui.cn/detail/22345.html
2016-12-12 15:34:36
313
原创 混合开发
1.原生态框架嵌套Html5网页混合开发,既有利于苹果审核通过,又有利于提高低配置安卓手机的性能,除了框架和消息推送采用原生态开发,其余都采用html5开发。html5的界面采用bootstrap开发,数据交互使用angulajs,数据库采用mysql,数据接口使用php, 开发工具采用HBuilder。2.纯原生态开发iOS苹果手机端顶层采用UITabBarViewControl
2016-12-12 15:33:27
313
转载 ios 键盘收起
在使用UITextField的时候,我们会和键盘打交道,有时候要求弹出来的键盘类型是数字键盘,有时候要求我们弹出来的是一般的键盘。当我们输入完成的时候,就涉及到在上什么时候收回键盘的事情了。收回键盘分下面的情况来讨论。大体来说,收起键盘的方法有:让textFiled放弃成为第一响应者(resignFirstResponder)让view或者子view强制结束编辑状态(endEd
2016-11-22 13:56:19
388
转载 iOS 硬件授权检测:定位服务、通讯录、日历、提醒事项、照片、蓝牙共享、麦克风、相机等
来源于:http://www.cocoachina.com/ios/20151214/14502.htmlOS系统版本的不断升级的前提,伴随着用户使用设备的安全性提升,iOS系统对于App需要使用的硬件限制也越来越严格,App处理稍有不妥,轻则造成功能不可用用户还不知道,重则会造成App Crash。当用户在App启动时,看到弹出来的一条条“XXX 请求访问您的位置” “XXX 请
2016-11-16 17:38:25
254
转载 短信、邮件、通讯录、蓝牙、社交、Game Center、应用内购买、iClould、Passbook
来源于:http://www.cocoachina.com/ios/20150129/11068.htmliOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录、微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等。今天将和大家一起学习如何使用系统应用、使用系统服务:调用系统应用使用系统服务短信与邮件
2016-11-16 17:33:57
6284
转载 iOS调试技巧(转载)
IOS各种调试技巧豪华套餐(转载) 目录 前言逼优鸡知己知彼 百战不殆抽刀断Bug 普通操作 全局断点(Global BreakPoint) 条件断点(Condational Breakpoints)打印的艺术 NSLog 开启僵尸对象(Enable NSZombie Objects)进击的码农 Consol
2016-07-28 09:57:56
357
原创 内存管理笔记
MRC手动内存管理:1.系统不会去检查已释放的对象,也就是说,当一个对象的引用计数为0时,这个对象此时再调用其方法不会报错,(成为野指针),除非开启僵尸调试诊断,一旦开启僵尸诊断就会发现崩溃。2.当把这个对象赋值为nil时,(成为空指针),再调用其方法,将不会出错,更不会崩溃。3.dealloc方法必须含有[super dealloc],且必须放在函数最后一行。当对象的引用计数为0时,系统
2016-07-28 09:39:48
202
转载 Big-Endian和Little-Endian
二、什么是大端和小端 Big-Endian和Little-Endian的定义如下:1) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。2) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。举一个例子,比如数字0x12 34 56 78在内存中的表示形式为:1)大端模式:低地
2016-07-03 14:40:16
389
转载 HTTPS TLS
要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识。1. 大致了解几个基本术语(HTTPS、SSL、TLS)的含义2. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”)3. 大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别)4. 大致了解 CA 证书的用途考虑到很多技术菜鸟可能不了解上述背景,俺先用最简短的文字描述一下。如果你
2016-07-01 16:19:02
308
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人