亚虎娱乐官方app中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
开源中国 - 找到您想要的开源项目,分享和交流 - 亚虎娱乐官方app_yahu999_亚虎国际pt客户端

精彩阅读

  • 最新推荐

  • 今日热门

  • 本周热门

  • 每日一博

  • 最新文章

Solidity 智能合约开发语言·数据类型

int/uint:变长的有符号或无符号整型。变量支持的步长以8递增,支持从uint8到uint256,以及int8到int256。需要注意的是,uint和int默认代表的是uint256和int256。 有符号整型能够表示负数的代价是其能够存储正数的范围的缩小,因为其约一半的数值范围要用来表示负数。如:uint8的存储范围为0 ~ 255,而int8的范围为-127 ~ 127
neo-chen 亚虎国际pt客户端于 21小时前 阅读 70

亚虎娱乐官方app巨献:年度最佳 JavaScript 和 CSS 亚虎娱乐官方app库推荐!

Tutorialzine 每个月都会公布一次当月新增的 JS 和 CSS 库。2018 新年之际,该网站整理出了 2017 年最受用户欢迎和喜爱的一些 JS 和 CSS 库,供大家学习和参考。 JavaScript 本地存储库 localForage localForage 是一个 JavaScript 库,提升了应用程序的离线体验,通过使用异步的数据存储,提供简单的类似 localStorage 的 API,允许开发者存储多种类型数据。 CSS3 驱动的动画滚动库 AOS AOS(Animate on scroll)是小型动画滚动库,可在页面滚动时给元素添加动画效果。CSS3 驱动,效果类似于 WOWJS。 响应式邮件标识语言 MJML MJML 是一个标识语言,用来减少编写响应式邮件的复杂度。其语义语法在展示丰富邮件内容时更加简单和直观。该项目提供一个亚虎娱乐官方app的引擎用来将 MJML 标识语言转成 HTML。 基于浏览器的代码编辑器 Monaco-Editor Monaco Editor 是微软亚虎娱乐官方app的基于 VS Code 的代码编辑器,运行在浏览器环境中。编辑器提供代码提示,智能建议等功能。供开发人员远程更方便的编写代码。 Web 虚拟现实框架 A-Frame A-Frame 是 Mozilla 亚虎娱乐官方app的网页虚拟现实体验( WebVR )框架,可用于桌面、iPhone(即将支持安卓)以及 Oculus Rift。A-Frame 可以让创建 WebVR 体验变得...
编辑部的故事 亚虎国际pt客户端于 22小时前 阅读 1488 评论 5 点赞 4

前端利器,6 款亚虎娱乐官方app Web 性能优化辅助工具推荐

Web 性能优化是一个老生常谈的话题,也是前端页面开发十分重要的部分。当页面加载速度越慢,用户流失的概率就越大,性能和交互直接影响用户体验。下面推荐几款 Web 性能优化辅助工具推荐,希望能对大家有所帮助。 1、Lighthouse Lighthouse 是 Google 亚虎娱乐官方app的一个自动化工具,用于改进网络应用的质量。你可以将其作为一个 Chrome 扩展程序运行,或从命令行运行。 当为 Lighthouse 提供一个要审查的网址,它将针对此页面运行一连串的测试,然后生成一个有关页面性能的报告。可以参考失败的测试,看看可以采取哪些措施来改进应用。 Chrom 扩展则会把报告以非常人性化的图形界面展示给你。 2、Speed Racer SpeedRacer 是一款性能测试工具,它在 Chrome 中运行脚本,并生成详细的性能报告。 SpeedRacer 是直接借助浏览器来实际测试性能的工具,在实际工作中,可以与其它模拟用户访问流量来评估性能的工具配合使用。 3、Yellow Lab Tools Yellow Lab Tools 是一款 Web 性能及前端质量测试工具。与其他工具不同的是,它有一些在其他工具上无法看到的独特功能,例如页面加载时 JavaScript 与 DOM 互动和其他程序代码验证问题。 Yellow Lab Tools 偏向于一个发现不良实践的工具,...
编辑部的故事 亚虎国际pt客户端于 22小时前 阅读 828 评论 3 点赞 4

SpringBoot项目中使用AOP

## 1.概述 将通用的逻辑用AOP技术实现可以极大的简化程序的编写,例如验签、鉴权等。Spring的声明式事务也是通过AOP技术实现的。 具体的代码参照 [示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-aop](https://github.com/qihaiyan/springcamp/tree/master/spring-aop) Spring的AOP技术主要有4个核心概念: 1. Pointcut: 切点,用于定义哪个方法会被拦截,例如 ```execution(* cn.springcamp.springaop.service.*.*(..))``` 2. Advice: 拦截到方法后要执行的动作 3. Aspect: 切面,把Pointcut和Advice组合在一起形成一个切面 4. Join Point: 在执行时Pointcut的一个实例 5. Weaver: 实现AOP的框架,例如 AspectJ 或 Spring AOP ## 2. 切点定义 常用的Pointcut定义有 execution 和 [@annotation](https://my.oschina.net/annotation) 两种。execution 定义对方法无侵入,用于实现比较通用的切面。[@annotation](https://my.oschina.net/annotation) 可以作为注解加到特定的方法上,例如Spring的Transaction注解。 execution切点定义应该放在一个公共的类中,集中管理切点定义。 示例: ```java public class CommonJoinPointConfig { @Pointcut("ex...
QiHaiYan 亚虎国际pt客户端于 1天前 阅读 542 评论 1

Tomcat源码分析之 doGet方法(一)

本文是《Tomcat 源码分析之 doGet方法》的第一篇文章,主要介绍了源码分析的目标以及主要任务有哪些,并对Servlet知识点做了非常细致的介绍,帮助大家更好的了解 Servlet,以及为什么用户自定义的 Servlet 需要继承 HttpServlet。
算法与编程之美 亚虎国际pt客户端于 1天前 阅读 49

JDBC【事务、元数据、改造JDBC工具类】

1.事务 事务指的就是:在一个SESSION中进行的操作要么全部成功,要么全部失败 举个例子:A向B转账,转账这个流程中如果出现问题,事务可以让数据恢复成原来一样【A账户的钱没变,B账户的钱也没变】。 事例说明: /* * 我们来模拟A向B账号转账的场景 * A和B账户都有1000块,现在我让A账户向B账号转500块钱 * * */ //JDBC默认的情况下是关闭事务的,下面我们看看关闭事务去操作转账操作有什么问题 //A账户减去500块 String sql = "UPDATE a SET money=money-500 "; preparedStatement = connection.prepareStatement(sql); preparedStatement.executeUpdate(); //B账户多了500块 String sql2 = "UPDATE b SET money=money+500"; preparedStatement = connection.prepareStatement(sql2); preparedStatement.executeUpdate(); 从上面看,我们的确可以发现A向B转账,成功了。可是**如果A向B转账的过程中出现了问题呢?**下面模拟一下 //A账户减去500块 String sql = "UPDATE a SET money=money-500 "; preparedSt...
Java3y 亚虎国际pt客户端于 2天前 阅读 109 评论 2

以太坊·将自定义数据写入到区块链中

本文节选自电子书《Netkiller Blockchain 手札》 Netkiller Blockchain 手札 本文作者最近在找工作,有意向致电 13113668890 Mr. Neo Chan, 陈景峯(BG7NYT) 中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com> 文档始创于2018-02-10 版权 © 2018 Netkiller(Neo Chan). All rights reserved.   版权声明 转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。 http://www.netkiller.cn http://netkiller.github.io http://netkiller.sourceforge.net 微信订阅号 netkiller-ebook (微信扫描二维码) QQ:13721218 请注明“读者” QQ群:128659835 请注明“读者”   5.5. 实用例子 5.5.1. 数据写入到区块链中 做一笔交易,并写入数据到区块链中 let Web3 = require("web3"); let fs = require("fs"); let web3 = new Web3("http://localhost:8545"); let log = { time:(new Date).getTime(), type:"info", msg:"Web3 Test!!!" }; let str = JSON.stringify(log); console.log(str); let data = Buffer.from(str).toString('hex'); data = '0x'+data; console.log(data); //将数据写入到交易中 let ...
neo-chen 亚虎国际pt客户端于 2天前 阅读 58

实用又好用,6 款 Python 特殊文本格式处理库推荐

以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助。 1、Tablib Tablib 是一个用来处理与表格格式数据有关的 Python 库,允许导入、导出、管理表格格式数据,并具备包括切片、动态列、标签和过滤,以及格式化导入和导出等高级功能。 Tablib 支持导出/导入的格式包括:Excel 、JSON 、YAML 、HTML 、TSV 和 CSV ,暂不支持 XML 。 >>> data = tablib.Dataset(headers=['First Name', 'Last Name', 'Age']) >>> for i in [('Kenneth', 'Reitz', 22), ('Bessie', 'Monke', 21)]: ... data.append(i) >>> print(data.export('json')) [{"Last Name": "Reitz", "First Name": "Kenneth", "Age": 22}, {"Last Name": "Monke", "First Name": "Bessie", "Age": 21}] >>> print(data.export('yaml')) - {Age: 22, First Name: Kenneth, Last Name: Reitz} - {Age: 21, First Name: Bessie, Last Name: Monke} >>> data.export('xlsx') <censored binary data> >>> data.export('df') First Name Last Name Age 0 Kenneth Reitz 22 1 Bessie Monke 21 2、Openpyxl Openpyxl 是一个用于读写 Excel 2010 xlsx / xlsm / x...
编辑部的故事 亚虎国际pt客户端于 2天前 阅读 1054 点赞 2

里程碑:DTrace 切换到 GPL 许可证

News:dtrace dropped the CDDL and switched to the GPL!
RiboseYim 亚虎国际pt客户端于 3天前 阅读 35

NEO从源码分析看网络通信

### **_0x00 前言_** NEO被称为中国版的Ethereum,支持C#和java开发,并且在社区的努力下已经把SDK拓展到了js,python等编程环境,所以进行NEO开发的话是没有太大语言障碍的。 比特币在解决拜占庭错误这个问题时除了引入了区块链这个重要的概念之外,还引入了工作量证明(PoW)这个机智的解决方案,通过数学意义上的难题来保证每个区块创建都需要付出计算量。然而实践已经证明,通过计算来提供工作量证明,实在是太浪费:全世界所有的完全节点都进行同样的计算,然而只有一个节点计算出的结果会被添加到区块链中,其余节点计算消耗的电力就都白白浪费了。尤其,工作量证明存在一个51%的可能攻击方案,就是说只要有人掌握了世界上超过50%的算力,那么他就可以对比特币这个系统进行攻击,重置区块链。中本聪先生发明这个算力工作量证明方法的时候大概没有料到会有人专门为了挖矿开发出ASIC矿机。 NEO在解决这些问题的时候提出了一个新的共享机制DBFT 全称为 Delegated Byzantine Fault Tolerant。NEO将节点分为两种,一种为普通节点,不参与共识,也就是不进行认证交易签名区块的过程。另一种是则是共识节点。顾名思义,就是可以参与共识的节点,这部分基础概念可以参考[官方...
暖冰 亚虎国际pt客户端于 5天前 阅读 472 点赞 1

iOS使用shell脚本注入混淆内容

使用shell脚本简化重复工作,提高工作效率666
aron1992 亚虎国际pt客户端于 6天前 阅读 88

Spring Boot 整合 Shiro 实现登录认证

安全无处不在,趁着放假读了一下 Shiro 文档,并记录一下 Shiro 整合 Spring Boot 在数据库中根据角色控制访问权限 # 简介 Apache Shiro是一个功能强大、灵活的,亚虎娱乐官方app的安全框架。它可以干净利落地处理身份验证、授权、企业会话管理和加密。 ![Shiro Architecture](http://img.blog.csdn.net/20180123210643079?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3RhY2tmaW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast) 上图是 Shiro 的基本架构 ### Authentication(认证) 有时被称为“登录”,用来证明用户是用户他们自己本人 ### Authorization(授权) 访问控制的过程,即确定“谁”访问“什么” ### Session Management(会话管理) 管理用户特定的会话,在 Shiro 里面可以发现所有的用户的会话信息都会由 Shiro 来进行控制 ### Cryptography(加密) 在对数据源使用加密算法加密的同时,保证易于使用 # Start ### 环境 Spring Boot 1.5.9 MySQL 5.7 Maven 3.5.2 Spring Data Jpa Lombok ### 添加依赖 这里只给出主要的 Shiro 依赖 ``` org.apache.shiro shiro-spring-boot-starter 1.4.0-RC2 ``` ### 配置 我们暂时只需要用户表、...
stackfing 亚虎国际pt客户端于 6天前 阅读 122

Ubuntu on Windows10 跨平台开发环境搭建权威指南

程序猿经常争论的一个话题是:日常开发到底 Windows 好还是 Linux 好?进而演化出另一个问题:到底选 MacBook 好还是 SurfaceBook 好? 选择 Linux 系统或者 mac 笔记本的同学最核心的理由是 Linux/Mac 开发、编译工具链比较完善,很多环境或者安装包都系统自带了,写出来的程序可以很方便的通过开发、测试与线上系统对接,开发测试效率比较高,而 Windows 下开发的同学可能需要考虑开发、测试代码的可移植性问题。就拿笔者来说,也曾经遇到过某些 java/python API 不支持 Windows 的问题,这给日常开发带来了不小的麻烦。 在 Windows10 以前,咱们为了解决 Windows 开发环境跨平台的问题,往往会选择 cygwin,这个项目本身已经很成熟了,笔者也用了很多年,它能在 Windows 下模拟一套类 Linux 的环境,用它应付一般的开发测试问题不大。但它的缺点在于组件、包管理器比较弱,对于日后的环境维护相当麻烦,而且一些底层 API 模拟的并不完善,对于一些涉及 Linux 底层的系统调用等场景显得很鸡肋。幸运的是在 2016 年,微软在 Windows10 WSL 里开始内置 Ubuntu,之后又开始在 Microsoft Store 以 UWP APP 的形式亚虎国际pt客户端各个 Linux 系统...
xrzs 亚虎国际pt客户端于 6天前 阅读 4155 评论 5 点赞 1

打造炫酷的通知插件EasyToaster

HTML + CSS + JS 原生实现, 兼容 Chrome, Firefox, IE9 及以上, 兼容 PC,移动端
lonelydawn 亚虎国际pt客户端于 7天前 阅读 39

大话循环神经网络(RNN)

—— 原文亚虎国际pt客户端于本人的微信公众号“大数据与人工智能Lab”(BigdataAILab),欢迎关注。     在上一篇文章中,介绍了 卷积神经网络(CNN)的算法原理,CNN在图像识别中有着强大、广泛的应用,但有一些场景用CNN却无法得到有效地解决,例如: 语音识别,要按顺序处理每一帧的声音信息,有些结果需要根据上下文进行识别; 自然语言处理,要依次读取各个单词,识别某段文字的语义 这些场景都有一个特点,就是都与时间序列有关,且输入的序列数据长度是不固定的。 而经典的人工神经网络、深度神经网络(DNN),甚至卷积神经网络(CNN),一是输入的数据维度相同,另外是各个输入之间是独立的,每层神经元的信号只能向上一层传播,样本的处理在各个时刻独立。   而在现实生活中,例如对一个演讲进行语音识别,那演讲者每讲一句话的时间几乎都不太相同,而识别演讲者的讲话内容还必须要按照讲话的顺序进行识别。 这就需要有一种能力更强的模型:该模型具有一定的记忆能力,能够按时序依次处理任意长度的信息。这个模型就是今天的主角“循环神经网络”(Recurrent Neural Networks,简称RNN)。 循环神经网络(RNN),神经元的输出可以在下一个时间戳直接作用到自身(作为输入)...
雪饼 亚虎国际pt客户端于 7天前 阅读 122

AutoML自动化机器学习技术深入

之前发表了一篇介绍AutoML技术的文章,但感觉还不够深入。今天抽出时间来仔细分析了AutoML相关框架的源码,见微知著,希望能更全面准确的把握目前的AutoML技术现状。 这次,我首先拿Auto_ML这块框架作为切入点,分析了框架源码的工作流,以及用到的技术,再与其他框架进行了横向比较,分析记录如下: AutoML 1.首先创建 Predictor 预测器; 一个Predictor预测器支持两种类型的任务:分类和回归 主要设置两个参数 type_of_estimator 和 column_descriptions type_of_estimator 指定了任务类型(classifier 或者 regressor) column_descriptions 指定了字段描述信息,如果为分类任务时,需指定Y所在的列(output)   2.调用Predictor 预测器的train方法训练模型; 一个简单的train方法,却做了很多事情: a. _clean_data_and_prepare_for_training :数据清洗和准备 _prepare_for_training:准备X和Y;删除X中的重复字段;删除Y值缺失的记录;将X中所有字段转换为float类型; 将Y值标准化; b.fit_transformation_pipeline :数据转换并输入管道 如果要使用深度学习组件,这里就会多一步特征学习的过程,调用方法名为:fit_feature_learning_and_transformation_pipeline 适应...
邵可佳 亚虎国际pt客户端于 7天前 阅读 94 打赏 2

Gateway杂谈:Gateway环境的构建和整合

gateway
fagongzi 亚虎国际pt客户端于 7天前 阅读 26

佟刚Spring4.0学习笔记

1. 概述 Spring是一个亚虎娱乐官方app框架,它为简化企业级应用开发而生,可以使简单的JavaBean实现以前只有EJB才能实现的功能。 1.1. 特点 轻量级(非侵入性):基于Spring开发的时候,我们不需要实现Spring提供的任何接口,也不需要继承Spring的任何类,然后我们就可以使用Spring给我们提供的功能 依赖注入(DI-Dependency Injection、IOC) 面向切面编程(AOP-Aspect Oriented Programming) 容器:Spring是一个容器,它可以管理应用对象的生命周期 一站式框架:在IOC和AOP的基础上可以整合各种企业级的亚虎娱乐官方app框架和优秀的第三方类库(实际上Spring自身也提供了展现层的Spring MVC和持久层的Spring JDBC) 组件组合:Spring实现了使用简单的组件组合成一个复杂的应用,在Spring中可以使用XML配置和Java注解组合这些组件 1.2. 模块 1.3. 配置文件 一个典型的Spring项目需要创建一个或多个Bean配置文件,这些配置文件用于配置Spring IOC容器管理的Bean。Bean的配置文件可以放在Classpath下,也可以放在其它目录下。 2. Hello World HelloWorld.java package org.lin.stu.spring; public class HelloWorld { private String name; public void setName(String name) { ...
情话撩人 亚虎国际pt客户端于 7天前 阅读 654 点赞 1

Spring Boot 使用 Redis 提升天气预报应用的并发访问能力

有时,为了提升整个网站的性能,我们会将经常需要访问数据缓存起来,这样,在下次查询的时候,能快速的找到这些数据。 缓存的使用与系统的时效性有着非常大的关系。当我们的系统时效性要求不高时,则选择使用缓存是极好的。当系统要求的时效性比较高时,则并不适合用缓存。 本文,我们将演示如何通过集成 Redis 服务器来进行数据的缓存,以提高微服务的并发访问能力。
waylau 亚虎国际pt客户端于 1周前 阅读 539 评论 4 点赞 1

JSON入门看这一篇就够了

什么是JSON JSON:JavaScript Object Notation 【JavaScript 对象表示法】 JSON 是存储和交换文本信息的语法。类似 XML。 JSON采用完全独立于任何程序语言的文本格式,使JSON成为理想的数据交换语言S 为什么需要JSON 提到JSON,我们就应该和XML来进行对比。XML也是一种存储和交换文本信息的手段。那么JSON好在哪里呢?? JSON 比 XML 更小、更快,更易解析。 javaScript原生支持JSON,解析速度会很快 XML解析成DOM对象的时候,浏览器【IE和fireFox】会有差异 使用JSON会更简单     更加容易创建JavaScript对象 var p = {'city':['北京','上海','广州','深圳']}; for(var i=0;i<p.city.length;i++){ document.write(p.city[i]+"<br/>"); } JSON语法 客户端与服务端的交互数据无非就是两种 数组 对象 于是乎,JSON所表示的数据要么就是对象,要么就是数组 JSON语法是javaScript语法的子集,javaScript用[]中括号来表示数组,用{}大括号来表示对象,JSON亦是如此 JSON数组: var employees = [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName": "Carter" } ]; JSON对象 ...
Java3y 亚虎国际pt客户端于 1周前 阅读 1253 评论 13 点赞 1

Nginx 教程 #3:SSL 设置

大家好!分享即关怀,我们很乐意与你分享其他的一些知识。我们准备了一个 Nginx 指南,分为三个系列。如果你已经知道一些 Nginx 知识或者想扩展你的经验和认知,这个再合适不过了。 我们将告诉你 Nginx 的运作模式、蕴含的概念,怎样通过调优 Nginx 来提高应用性能,或是如何设置它的启动和运行。 这个教程有三个部分: 基本概念 —— 这部分需要去了解 Nginx 的一些指令和使用场景,继承模型,以及 Nginx 如何选择 server 块,location 的顺序。 性能 —— 介绍改善 Nginx 速度的方法和技巧,我们会在这里谈及 gzip 压缩,缓存,buffer 和超时。 SSL 安装 —— 如何配置服务器使用 HTTPS 创建这个系列,我们希望,一是作为参考书,可以通过快速查找到相关问题(比如 gzip 压缩,SSL 等)的解决方式,也可以直接通读全文。为了获得更好的学习效果,我们建议你在本机安装 Nginx 并且尝试进行实践。 SSL 和 TLS SSL(Socket Secure Layer 缩写)是一种通过 HTTP 提供安全连接的协议。 SSL 1.0 由 Netscape 开发,但由于严重的安全漏洞从未公开亚虎国际pt客户端过。SSL 2.0 于 1995 年亚虎国际pt客户端,它存在一些问题,导致了最终的 SSL 3.0 在 1996 年亚虎国际pt客户端。 TLS(Transport Layer Security 缩写...
Mr_zebra 亚虎国际pt客户端于 2周前 阅读 6

影响英语单词拼写的6大因素

小编给你一个美联英语官方试听课申请链接: http://www.meten.com/?tid=16-73374-0 1、外来语的影响 对英语拼写影响较大的三种语言是希腊语(多数词汇通过拉丁语间接进入英语)、拉丁语(英语80%的词汇直接或间接来源于拉丁语)和法语。 1)希腊语: 英语中保留了一些典型的希腊语拼法,如发音为/k/的ch组合(chemistry、orchestra(n. 管弦乐队))等等,因为ch在希腊语中是一个字母,h表示是送气音、词首的rh组合(rhyme、rhetoric)等等,因为希腊语中与英语r对应的字母在词首必须有送气音标志、ps组合(psychology、psychiatrist)等等,因为ps在希腊语中是一个字母、mn组合(mnemonic)等等。此外,部分英语词汇的词尾单复数均遵循希腊语规则,如on→a(phenomenon/phenomena、criterion/criteria)、is→es(crisis / crises、thesis / theses)的变化。 2)拉丁语: 拉丁语对英语拼写的影响非常巨大,我们在3-6条还要涉及到,这里主要介绍对英语词尾的影响。以-us(如alumnus)、-a(如alga)、-um(如referendum、datum)等结尾的很多英语词汇都源于拉丁语,因而在变复数时遵循拉丁语的规则: us→i(alumni)、a→ae(algae)、um→a(referenda、data)等等。...
天蚕宝衣 亚虎国际pt客户端于 10小时前 阅读 4

金銀倉回答消費者的幾個常見問題

金銀倉回答消費者的幾個常見問題。 有消費者流覽我地金銀倉的網站,常常會問幾個問題。下面我會在這裡做一個回答。 問題1 金銀倉系香港澳門、深圳珠海有無show room實體展廳?想睇實物系邊度睇? 金銀倉回答: 金銀倉系一個電商,為左節省成本(其實租不起展廳),我地金銀倉系香港澳門、深圳珠海都無實體展廳。所以,要想睇到實物,真系唔好意思。顧客想睇到實物,只能靠流覽我們的金銀倉網站www.shknw.com和圖片。   問題2 金銀倉無展廳,貨物照片又唔系甘清晰,金銀倉點保證送到香港澳門的貨物同照片看到的是同一個款式?金銀倉有咩辦法保障顧客的權益? 金銀倉回答: 雖然金銀倉無展廳,但我地金銀倉提出2個措施可以最大限度保障消費者的權益。 一、貨到地盤才收錢,免去很多人網上消費的疑慮和擔心,全部委託中港貨運公司代收貨款。客戶在簽收的時候發現有貨不對版,可以拒絕簽收。我地金銀倉有呢個承諾。基本上有呢個承諾,顧客的風險已經變成零。有什麼覺得唔對路,你就俾電話我地金銀倉,金銀倉會叫中港貨運公司拉走貨物,拉去堆填區。 從我這麼多年在深圳經營的經驗來說,遭遇貨不對版,遭遇退貨的情況很少很少。一般100單只有1-2單系會遭遇退貨的。至於說貨不對...
金銀瓷磚批發倉 亚虎国际pt客户端于 7小时前 阅读 3

idea/ecipse中使用maven集成springmvc相关jar包时候,出错:java.lang.ClassNotFoundException: org.springframework.web.

参考stackoverflow:https://stackoverflow.com/questions/11227395/java-lang-classnotfoundexception-org-springframework-web-servlet-dispatcherserv eclipse中: right click on your project and choose properties. click on Deployment Assembly. click add click on "Java Build Path Entries" select Maven Dependencies" click Finish. idea中: In idea Intellij you need to go to File -> Project Settings -> Artifacts. Then
为了美好的明天 亚虎国际pt客户端于 2个月前 阅读 18

運輸配送信息Delivery_Information

運輸配送信息Delivery_Information 金銀倉會選用以下運輸公司,為客戶配送磁磚傢俬潔具:   佛山冠昌達中港運輸(散貨或包車,近佛山石灣的磁磚倉庫,近樂從傢俬城), 佛山新鵬港中港運輸(散貨或包車,近佛山石灣的建材倉庫,近樂從傢俬城), 佛山金泉貨運中港運輸(散貨或包車,近佛山石灣的倉庫), 佛山中潤貨運,深圳環城貨運,佛山順安貨運(深圳---佛山磁磚巴士) 佛山新港珠江船務(船運集裝箱貨櫃,近佛山新港,石灣港,南莊西樵鎮拋光磚廠一條街,上千個貼牌商,也近官窯日本愛和陶ICOT磁磚廠), 肇慶四會南江碼頭,肇慶碼頭,三水碼頭(近肇慶清遠高要四會高要磁磚廠家,船運集裝箱貨櫃,我不會告訴你RAK哈伊馬角磁磚廠,高爾磁磚廠(曾經東鵬的貼牌廠),金意陶,美國OTM奧特瑪磁磚廠,四會南江陶瓷工業園,高要陶瓷工業園就在附近的。), 深圳東成中港運輸(散貨或包車,近深圳清水河,田貝很多磁磚建材倉庫)   運輸方式很豐富,既適合散貨,也適合大地盤開工需要。   考慮到有很多大地盤沒有叉車。如果大地盤開工,我地金銀倉會建議選擇包車過港(26噸),運費比散貨平。   除非客戶有特殊說明,一般貨運選擇由我們金銀倉選擇,因為需要方便磁磚的調...
金銀瓷磚批發倉 亚虎国际pt客户端于 7小时前 阅读 3

数据挖掘入门笔记

最近想学习一下数据挖掘的相关知识,从网上找了本《数据挖掘:概念与技术》来看看。打算写一些笔记,记录一下比较基础又重要的知识点。希望自己能把基础打牢一点,也希望能帮到一些跟我一样打算入门的小白。 1、数据挖掘可以看做信息技术自然进化的结果,它是基于数据库和数据管理产业不断发展的产物。 2、什么是数据挖掘? 通俗来说数据挖掘就是从大量数据中挖掘有趣模式和知识的过程。它是我们从大型数据集中提炼知识的一项基本步骤,全部步骤为:数据清洗(消除噪声和删除不一致数据)、数据集成(多种数据源可以组合在一起)、数据选择(从数据库中提取与分析任务相关的数据)、数据变换(通过汇总或聚集操作,把数据变换和统一成适合挖掘的形式)、数据挖掘(使用智能方式提取数据模式)、模式评估(根据某种兴趣度度量,识别代表知识的真正有趣的模式)、知识表示(使用可视化和知识表示技术,向用户提供挖掘的知识)。 3、数据库和数据仓库的区别 关系数据库是表的汇集,每个表中的数据都是高度结构化的结果,每条数据都由多个相同类型属性构成,因此使用起来可以十分方便的抓住数据的主要特征(是数据挖掘研究的一种主要数据形式)。数据仓库是一个从多个数据源收集...
辣鸡大学生代表 亚虎国际pt客户端于 5小时前 阅读 3

一个基于Keras深度学习实验型情感分类的小玩意

短文本分类,keras
Digimon 亚虎国际pt客户端于 3个月前 阅读 46 点赞 1

mac - Android Studio - Android Device Monitor 打开空白或提示安装 jdk6

今天搞 autojs 的微信自动聊天,想到用Android Device Monitor看看微信的布局。打开Android Device Monitor 后提示安装 jdk6 心想没必要装这么老的版本吧 ,就去官网下了最新的 jdk8 ,装好后打开界面是空白的啥也没有。 网上查了一下发现有人说是最新的 jdk1.8.0_161 版本不行,换 jdk1.8.0_144 就可以了。 这里稍微要注意的是 老版本和新版本可以共存 但默认会使用新版本,所以这里要删除掉新版本,方法是: 然后重启Android Studio就 ok 了。 历史版本 Java 下载页面:http://www.oracle.com/technetwork/cn/java/archive-139210-zhs.html
dubox 亚虎国际pt客户端于 3小时前 阅读 3

《WinForm 系列》- DBF文件导入导出

项目结构 设置属性 private const string DbfTAbleName = "dbf_user"; private string _saveFileName = string.Empty; 导出DBF 初始化数据 #region 初始化数据 - InitData() private List<User> InitData() { List<User> list = new List<User>(); for (int i = 0; i < 100; i++) { User user = new User() { ID = i, Name = "Jack" + i }; list.Add(user); } return list; } #endregion 保存路径 #region 保存文件 - SaveData() private void SaveData() { SaveFileDialog saveFile = new SaveFileDialog(); saveFile.Filter = "所有DBF文件|*.DBF";//设置文件类型 saveFile.Title = "导出DBF数据";//设置标题 saveFile.AddExtension = true; saveFile.FileName = DbfTAbleName + ".DBF"; saveFile.AutoUpgradeEnabled = true; if (saveFile.ShowDialog() == DialogResult.OK) { _saveFileName = saveFile.FileName; } } #endregion 开始导出(核心方法) #region 导出文件 - ExportData() private void ExportData() { #region 1.0 创建OLEDB连接 string basePath = str...
Kimisme 亚虎国际pt客户端于 1个月前 阅读 10

session、cookie与“记住我的登录状态”的功能的实现

session、cookie与“记住我的登录状态”的功能的实现 Cookie的机制 Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能。 Cookie的Domain和Path属性标识了这个Cookie是哪一个网站发送给浏览器的;Cookie的Expires属性标识了Cookie的有 效时间,当Cookie的有效时间过了之后,这些数据就被自动删除了。 如果不设置过期时间,则表示这个Cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,Cookie就消失了。这种生命期为浏览会话期的 Cookie被称为会话Cookie。会话Cookie一般不保存在硬盘上而是保存在内存里。如果设置了过期时间,浏览器就会把Cookie保存到硬盘 上,关闭后再次打开浏览器,这些Cookie依然有效直到超过设定的过期时间。存储在硬盘上的Cookie可以在不同的浏览器进程间共享,比如两个IE窗 口。而对于保存在内存的Cookie,不同的浏览器有不同的处理方式。 Session的机制 Session是存放在服务器端的类似于HashTable结构(每一种Web开发技术的实现可能不一样,下文直接称之为HashTable)来存放用户 数据,当浏览器第一次发送请求时,服务器自动生成了一个HashTable和一个Session ID用来唯一...
今天来找bug 亚虎国际pt客户端于 2周前 阅读 14

家庭私有云盘系列教程-本地搭建家庭NAS方案

目前第三方云盘存在速度慢、限制多、取回难、费用高等各方面问题,这里进行本地搭建NAS方案,配置个人私有云盘前置基础,存储个人大量数据及共享分享给朋友使用。
Eller 亚虎国际pt客户端于 7小时前 阅读 2

Java多线程编程核心技术---对象及变量的并发访问

Java多线程编程核心技术---对象及变量的并发访问
中小宇 亚虎国际pt客户端于 3个月前 阅读 10

python format() 格式化 数字

数字 格式 输出 描述 3.1415926 {:.2f} 3.14 保留小数点后两位 3.1415926 {:+.2f} +3.14 带符号保留小数点后两位 -1 {:+.2f} -1.00 带符号保留小数点后两位 2.71828 {:.0f} 3 不带小数 5 {:0>2d} 05 数字补零 (填充左边, 宽度为2) 5 {:x<4d} 5xxx 数字补x (填充右边, 宽度为4) 10 {:x<4d} 10xx 数字补x (填充右边, 宽度为4) 1000000 {:,} 1,000,000 以逗号分隔的数字格式 0.25 {:.2%} 25.00% 百分比格式 1000000000 {:.2e} 1.00e+09 指数记法 13 {:10d}         13 右对齐 (默认, 宽度为10) 13 {:<10d} 13 左对齐 (宽度为10) 13 {:^10d}     13 中间对齐 (宽度为10) 11 '{:b}'.format(11) '{:d}'.format(11) '{:o}'.format(11) '{:x}'.format(11) '{:#x}'.format(11) '{:#X}'.format(11) 1011 11 13 b 0xb 0XB 进制 ^, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。 + 表示在正数前显示 +,负数前显示 -;  (空格)表示在正数前加空格...
易野 亚虎国际pt客户端于 2个月前 阅读 16

聊聊hikari连接池的isAllowPoolSuspension

## 序 本文主要研究一下hikari连接池的isAllowPoolSuspension属性 ## 实例代码 ``` @Test public void testPoolSuspend() throws SQLException { Connection conn = dataSource.getConnection(); System.out.println("begin to suspend pool"); ((HikariDataSource)dataSource).suspendPool(); Connection conn2 = dataSource.getConnection(); System.out.println("finish"); } ``` ## suspend ``` begin to suspend pool java.lang.IllegalStateException: HikariPool-1 - is not suspendable at com.zaxxer.hikari.pool.HikariPool.suspendPool(HikariPool.java:372) at com.zaxxer.hikari.HikariDataSource.suspendPool(HikariDataSource.java:326) at com.example.demo.HikariDemoApplicationTests.testPoolSuspend(HikariDemoApplicationTests.java:37) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at or...
go4it 亚虎国际pt客户端于 3周前 阅读 14

使用Spark SQL的临时表解决一个小问题

最近在使用spark处理一个业务场景时,遇到一个小问题,我在scala代码里,使用spark sql访问hive的表,然后根据一批id把需要的数据过滤出来,本来是非常简单的需求直接使用下面的伪SQL即可: ```` select * from table where id in (id1,id2,id3,id4,idn) ```` 但现在遇到的问题是id条件比较多,大概有几万个,这样量级的in是肯定会出错的,看网上文章hive的in查询超过3000个就报错了。 如何解决? 主要有两种解决方法: (一)分批执行,就是把几万个id,按3000一组查询一次,最后把所有的查询结果在汇合起来。 (二)使用join,把几万个id创建成一张hive表,然后两表关联,可以一次性把结果给获取到。 这里倾向于第二种解决办法,比较灵活和方便扩展,尽量不要把数据集分散,一旦分散意味着客户端需要做更多的工作来合并结果集,比如随便一个sum或者dinstict,如果是第一种则需要在最终的结果集再次sum或者distinct。 下面看看如何使用第二种解决: 由于我们id列表是动态的,每个任务的id列表都有可能变换,所以要满足第二种方法,就得把他们变成一张临时表存储在内存中,当spark任务停止时,就自动销毁,因为他们不需要持久化到硬盘上。 在spark中使用临时表是非常简单的...
九劫散仙 亚虎国际pt客户端于 2个月前 阅读 22

uReport2

http://www.bsdn.org/projects/ureport UReport2已正式亚虎国际pt客户端 UReport2是一款基于架构在Spring之上纯Java的高性能报表引擎,通过迭代单元格可以实现任意复杂的中国式报表。相比UReport1,UReport2重写了全部代码,弥补了UReport1在功能及性能上的各种不足。 在UReport2中,提供了全新的基于网页的报表设计器,可以在Chrome、Firefox、Edge等各种主流浏览器运行(IE浏览器除外)。使用UReport2,打开浏览器即可完成各种复杂报表的设计制作。 UReport2文档视频教程地址:http://wiki.bsdn.org/display/UR UReport2是第一款基于Apache-2.0 License亚虎娱乐官方app免费的中式报表引擎,Github地址:https://github.com/youseries/ureport,欢迎大家前去fork、star。 http://wiki.bsdn.org/pages/viewpage.action?pageId=76449447 https://my.oschina.net/u/1999955/blog/303052    ...
yizhichao 亚虎国际pt客户端于 3个月前 阅读 133

ctdb+samba+cephfs高可用

ctdb是应用层高可用亚虎娱乐官方appyahu999,可以为iscsi、nfs、samaba配置高可用。cephfs不能windows下挂载使用,本文利用两台linux主机挂载cephfs通过samba导出,ctdb在两台Samba服务器之间配置高可用,windows系统中挂载samba,在其中一台samba服务主机宕机下,windows还可以继续不中断使用samba服务,做到高可用。
zrz11 亚虎国际pt客户端于 4周前 阅读 22

GCC 显示完整的编译过程

源码: f1.c #include <stdio.h> #include <ucontext.h> #include <unistd.h> #include <sys/time.h> int main(int argc, const char *argv[]) { ucontext_t context; int count = 0; getcontext(&context); int value = 0; printf("Hello World! count = %d, value = %d\n", count++, value++); sleep(1); setcontext(&context); return 0; } 显示完整编译链接过程 user_00@(none):asm> gcc --verbose f1.c -m32 Using built-in specs. Target: x86_64-suse-linux Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.2 --enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib64 --with-system-zlib --enable-shared --enable-__cxa_atexit --enable-libstdcxx-allocator=new --program-suffix= --enable-version-specific-runtime-...
老汉-憨憨 亚虎国际pt客户端于 4周前 阅读 10

Maximum Binary Tree

问题: Given an integer array with no duplicates. A maximum tree building on this array is defined as follow: The root is the maximum number in the array. The left subtree is the maximum tree constructed from left part subarray divided by the maximum number. The right subtree is the maximum tree constructed from right part subarray divided by the maximum number. Construct the maximum tree by the given array and output the root node of this tree. Example 1: Input: [3,2,1,6,0,5] Output: return the tree root node representing the following tree: 6 / \ 3 5 \ / 2 0 \ 1 Note: The size of the given array will be in the range [1,1000]. 解决: ①  构造最大树。递归解决。 class Solution { //13ms     public TreeNode constructMaximumBinaryTree(int[] nums) {         return getTree(nums,0,nums.length - 1);     }     public TreeNode getTree(int[] nums,int left,int right){         if (left > right) return null;         int max = ...
叶枫啦啦 亚虎国际pt客户端于 1个月前 阅读 5

SpringMVC返回图片的几种方式

后端提供服务,通常返回的json串,但是某些场景下可能需要直接返回二进制流,如一个图片编辑接口,希望直接将图片流返回给前端,此时可以怎么处理?
小灰灰Blog 亚虎国际pt客户端于 1个月前 阅读 720 评论 3 点赞 1

Ubuntu on Windows10 跨平台开发环境搭建权威指南

程序猿经常争论的一个话题是:日常开发到底 Windows 好还是 Linux 好?进而演化出另一个问题:到底选 MacBook 好还是 SurfaceBook 好? 选择 Linux 系统或者 mac 笔记本的同学最核心的理由是 Linux/Mac 开发、编译工具链比较完善,很多环境或者安装包都系统自带了,写出来的程序可以很方便的通过开发、测试与线上系统对接,开发测试效率比较高,而 Windows 下开发的同学可能需要考虑开发、测试代码的可移植性问题。就拿笔者来说,也曾经遇到过某些 java/python API 不支持 Windows 的问题,这给日常开发带来了不小的麻烦。 在 Windows10 以前,咱们为了解决 Windows 开发环境跨平台的问题,往往会选择 cygwin,这个项目本身已经很成熟了,笔者也用了很多年,它能在 Windows 下模拟一套类 Linux 的环境,用它应付一般的开发测试问题不大。但它的缺点在于组件、包管理器比较弱,对于日后的环境维护相当麻烦,而且一些底层 API 模拟的并不完善,对于一些涉及 Linux 底层的系统调用等场景显得很鸡肋。幸运的是在 2016 年,微软在 Windows10 WSL 里开始内置 Ubuntu,之后又开始在 Microsoft Store 以 UWP APP 的形式亚虎国际pt客户端各个 Linux 系统...
xrzs 亚虎国际pt客户端于 6天前 阅读 4155 评论 5 点赞 1

亚虎娱乐官方app巨献:年度最佳 JavaScript 和 CSS 亚虎娱乐官方app库推荐!

Tutorialzine 每个月都会公布一次当月新增的 JS 和 CSS 库。2018 新年之际,该网站整理出了 2017 年最受用户欢迎和喜爱的一些 JS 和 CSS 库,供大家学习和参考。 JavaScript 本地存储库 localForage localForage 是一个 JavaScript 库,提升了应用程序的离线体验,通过使用异步的数据存储,提供简单的类似 localStorage 的 API,允许开发者存储多种类型数据。 CSS3 驱动的动画滚动库 AOS AOS(Animate on scroll)是小型动画滚动库,可在页面滚动时给元素添加动画效果。CSS3 驱动,效果类似于 WOWJS。 响应式邮件标识语言 MJML MJML 是一个标识语言,用来减少编写响应式邮件的复杂度。其语义语法在展示丰富邮件内容时更加简单和直观。该项目提供一个亚虎娱乐官方app的引擎用来将 MJML 标识语言转成 HTML。 基于浏览器的代码编辑器 Monaco-Editor Monaco Editor 是微软亚虎娱乐官方app的基于 VS Code 的代码编辑器,运行在浏览器环境中。编辑器提供代码提示,智能建议等功能。供开发人员远程更方便的编写代码。 Web 虚拟现实框架 A-Frame A-Frame 是 Mozilla 亚虎娱乐官方app的网页虚拟现实体验( WebVR )框架,可用于桌面、iPhone(即将支持安卓)以及 Oculus Rift。A-Frame 可以让创建 WebVR 体验变得...
编辑部的故事 亚虎国际pt客户端于 22小时前 阅读 1488 评论 5 点赞 4

Machine Learning:十大机器学习算法

- 机器学习算法分类:监督学习、无监督学习、强化学习 - 基本的机器学习算法:线性回归、支持向量机(SVM)、最近邻居(KNN)、逻辑回归、决策树、k平均、随机森林、朴素贝叶斯、降维、梯度增强
RiboseYim 亚虎国际pt客户端于 1周前 阅读 1800 评论 9 点赞 5

前端利器,6 款亚虎娱乐官方app Web 性能优化辅助工具推荐

Web 性能优化是一个老生常谈的话题,也是前端页面开发十分重要的部分。当页面加载速度越慢,用户流失的概率就越大,性能和交互直接影响用户体验。下面推荐几款 Web 性能优化辅助工具推荐,希望能对大家有所帮助。 1、Lighthouse Lighthouse 是 Google 亚虎娱乐官方app的一个自动化工具,用于改进网络应用的质量。你可以将其作为一个 Chrome 扩展程序运行,或从命令行运行。 当为 Lighthouse 提供一个要审查的网址,它将针对此页面运行一连串的测试,然后生成一个有关页面性能的报告。可以参考失败的测试,看看可以采取哪些措施来改进应用。 Chrom 扩展则会把报告以非常人性化的图形界面展示给你。 2、Speed Racer SpeedRacer 是一款性能测试工具,它在 Chrome 中运行脚本,并生成详细的性能报告。 SpeedRacer 是直接借助浏览器来实际测试性能的工具,在实际工作中,可以与其它模拟用户访问流量来评估性能的工具配合使用。 3、Yellow Lab Tools Yellow Lab Tools 是一款 Web 性能及前端质量测试工具。与其他工具不同的是,它有一些在其他工具上无法看到的独特功能,例如页面加载时 JavaScript 与 DOM 互动和其他程序代码验证问题。 Yellow Lab Tools 偏向于一个发现不良实践的工具,...
编辑部的故事 亚虎国际pt客户端于 22小时前 阅读 828 评论 3 点赞 4

Java 9 新特性概述

Java 9 正式亚虎国际pt客户端于 2017 年 9 月 21 日 。作为 Java8 之后 3 年半才亚虎国际pt客户端的新版本,Java 9 带 来了很多重大的变化。其中最重要的改动是 Java 平台模块系统的引入。除此之外,还有一些新的特性。 本文对 Java9 中包含的新特性做了概括性的介绍,可以帮助你快速了解 Java 9
IBM Cloud

实用又好用,6 款 Python 特殊文本格式处理库推荐

以下是一些 Python 编写的用来解析和操作特殊文本格式的库,希望对大家有所帮助。 1、Tablib Tablib 是一个用来处理与表格格式数据有关的 Python 库,允许导入、导出、管理表格格式数据,并具备包括切片、动态列、标签和过滤,以及格式化导入和导出等高级功能。 Tablib 支持导出/导入的格式包括:Excel 、JSON 、YAML 、HTML 、TSV 和 CSV ,暂不支持 XML 。 >>> data = tablib.Dataset(headers=['First Name', 'Last Name', 'Age']) >>> for i in [('Kenneth', 'Reitz', 22), ('Bessie', 'Monke', 21)]: ... data.append(i) >>> print(data.export('json')) [{"Last Name": "Reitz", "First Name": "Kenneth", "Age": 22}, {"Last Name": "Monke", "First Name": "Bessie", "Age": 21}] >>> print(data.export('yaml')) - {Age: 22, First Name: Kenneth, Last Name: Reitz} - {Age: 21, First Name: Bessie, Last Name: Monke} >>> data.export('xlsx') <censored binary data> >>> data.export('df') First Name Last Name Age 0 Kenneth Reitz 22 1 Bessie Monke 21 2、Openpyxl Openpyxl 是一个用于读写 Excel 2010 xlsx / xlsm / x...
编辑部的故事 亚虎国际pt客户端于 2天前 阅读 1054 点赞 2

【码云周刊第 59 期】你想要的年会抽奖亚虎娱乐官方app项目都在这里!

每周为您推送最有价值的亚虎娱乐官方app技术内参!
码云Gitee 亚虎国际pt客户端于 2周前 阅读 882 评论 5

Nginx日志分割

### 一.使用脚本切割 ##### 编辑脚本 ``` tianshl@tianshl nginx $ vim nginx_log_division.sh ``` ##### 脚本内容 ``` #! /bin/sh # 昨天日期 yesterday=`date -v -1d +%Y%m%d` # 日志目录 log_path="/usr/local/var/log/nginx/" # SDK日志路径 sdk_path=${log_path}sdk # 以天为单位切分日志 mv -f ${sdk_path}.log ${sdk_path}_${yesterday}.log # 重新生成日志文件 pid_path="/usr/local/var/run/nginx.pid" sudo kill -USR1 `cat ${pid_path}` ``` ##### 定时任务 ###### 切换到root身份 ``` tianshl@tianshl nginx $ sudo su root ``` ###### 编辑 crontab ``` sh-3.2# crontab -e ``` ###### crontab 添加一行 ``` 0 0 * * * sh /usr/local/var/log/nginx/nginx_log_division.sh ``` ###### 查看是否添加成功 ``` sh-3.2# crontab -l ``` ### 二.不使用脚本切割 ##### server 段增加以下代码 ``` if ($time_iso8601 ~ "(\d{4})-(\d{2})-(\d{2})") { set $time $1$2$3; } ``` ##### 日志文件路径中增加日期参数 ``` access_log /var/log/nginx/api-$time.log; ``` ##### 举个栗子 ``` events { worker_connections 1024; } http { server { # 监听88端口 listen 88;...
tianshl 亚虎国际pt客户端于 2个月前 阅读 273568

MacOS 配置Java环境变量

### 编辑 bash_profile ```shell vim ~/.bash_profile 输入以下内容并保存 export JAVA_HOME=`/usr/libexec/java_home` export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin ``` ### 使环境变量生效 ``` source ~/.bash_profile ``` ### 检验 ```shell tianshl@tianshl ~ $ echo $PATH ``` ### 备注 ``` 1. source前使用fish的要先退出fish 2. /usr/libexec/java_home 这条命令可以输出JAVA_HOME的路径 ```
tianshl 亚虎国际pt客户端于 3个月前 阅读 354216 点赞 1

免费云服务器

如何快速申请免费的阿里云服务器
tianshl 亚虎国际pt客户端于 2个月前 阅读 237811 点赞 1

Nginx日志配置及分割

1. 格式化日志内容 2. 日志文件切割
tianshl 亚虎国际pt客户端于 2个月前 阅读 272084 点赞 1

Java递归拷贝文件夹

### 拷贝文件或文件夹 ``` /** * 拷贝文件 * * @param source 源文件 * @param target 目标文件 */ public void copyFile(String source, String target) { // 源文件 File sourceFile = new File(source); if (!sourceFile.exists()) { return; } // 目标文件 File targetFile = new File(target); // 文件拷贝 if (sourceFile.isFile()) { copyFromChanel(sourceFile, targetFile); return; } // 文件夹拷贝 if (!targetFile.exists()) { targetFile.mkdirs(); } for (File file: sourceFile.listFiles()) { copyFile(file.getAbsolutePath(), target + File.separator + file.getName()); } } ``` ### 利用文件管道拷贝文件 ``` /** * 利用文件管道拷贝文件 * * @param source 源文件 * @param target 目标文件 */ public void copyFromChanel(File source, File target) { // 文件流 FileInputStream fis = null; FileOutputStream fos = null; // 文件管道 FileChannel fci = null; FileChannel fco = null; try { // 文件流 fis = new FileInputStream(source); fos = new FileOutputStream(target); // 文件管道 fci = fis.getChannel(); fco = fos.getChannel(); ...
tianshl 亚虎国际pt客户端于 2个月前 阅读 271729 点赞 1

JavaScript指定长度和进制的UUID

### 指定长度和进制的UUID ``` /** * 指定长度和进制的UUID * @param len 长度 * @param radix 进制 * @returns {string} */ function uuid(len, radix) { var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split(''); var uuid = [], i; radix = radix || chars.length; if (len) { for (i = 0; i < len; i++) uuid[i] = chars[0 | Math.random()*radix]; } else { var r; uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-'; uuid[14] = '4'; for (i = 0; i < 36; i++) { if (!uuid[i]) { r = 0 | Math.random()*16; uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r]; } } } return uuid.join(''); } ``` ### 测试 ``` uuid(32, 2) "11110011000001100111011111001111" uuid(32, 8) "31730315503322654076326054034634" uuid(32, 10) "50235847867589708943975575132412" uuid(32, 16) "405F8CA9918F71FC9C73DACB47CEC6EE" ```...
tianshl 亚虎国际pt客户端于 3个月前 阅读 338583

Java中的OneToMany

### 写在开头 ``` 使用jhipster声明的OneToMany在One的一方DTO中是没有与Many的DTO的映射关系的, 为了在One的一方DTO中使用Many的DTO, 使用以下三步解决此问题。 ``` ### 步骤 ``` 1. OneDTO 中的"mark 1"处为自己写的一对多的关系, 此处变量名称不能与实体One中相应的变量名称一致,否则编译失败。 2. OneMapper 中的"mark 2"处 uses属性添加ManyMapper。 2. OneMapper 中的"mark 3"处使用@Mapping注解声明 Entity 转 DTO 的映射关系。 ``` ### Entity ``` @Entity @Table(name = "one") public class One { ... @OneToMany(mappedBy = "one") private Set manys = new HashSet<>(); ... public void setManys(Set manys) { this.manys = manys; } public Set getManys() { return manys; } } @Entity @Table(name = "many") public class Many { ... @ManyToOne private One one; } ``` ### DTO ``` public class OneDTO { ... // mark 1 private Set manyDTOS = new HashSet<>(); ... public void setManyDTOS(Set manyDTOS) { this.manyDTOS = manyDTOS; } public Set getManyDTOS() { return manyDTOS; } } public class ManyDTO { ... private Long oneId; ... public...
tianshl 亚虎国际pt客户端于 3周前 阅读 7495

ELK -- Logstash安装与配置

### Logstash ##### 使用yum安装 ###### 编辑 repo ``` vim /etc/yum.repos.d/elasticsearch.repo # 内容如下 [elasticsearch-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ``` ###### 安装 ``` sudo yum install logstash ``` #### 配置 Logstash ``` # 参考 https://www.elastic.co/guide/en/logstash/current/configuration-file-structure.html # input项配置源数据,此处为监听 "/log"目录下满足"insert.*.log"匹配的所有日志文件 # filter项过滤input输入的数据, "insert.*.log"中每条日志形式如:"2018-01-15 | type | cid | src | eventId | reason", 所以使用" | "拆分每条日志 # output项是输出数据,此处为输出至ElasticSearch # 新建配置文件 insert.conf vim conf.d/insert.conf # 内容如下 input { file { path => "/log/insert.*.log" } } filter { mutate{ split=>["message"," | "] add_field => { "date" => "%{[message][0]}" } add_field => { "type" => "%{[message][1]...
tianshl 亚虎国际pt客户端于 1个月前 阅读 30354

Sublime配置Python3运行环境

### 新增Python3编译环境 ``` Tools > Build System > New Build System 将默认内容替换为: { "cmd": ["python3", "-u", "$file"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "selector": "source.python" } 保存为 Python3.sublime-build ``` ### 选中Python3环境 ``` Tools > Build System > Python3 ``` ### 使用Python3编译运行 ``` Ctrl + b ``` ### 可能遇到的问题 ##### 问题 ``` UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128) ``` ##### 原因 ``` 默认是ascii编码但是输出中包含中文 ``` ##### 解决 ``` Preferences > Browse Packages > Users > Python3.sublime-build 修改配置文件, 配置文件中新增一条 "env": {"LANG": "en_US.utf-8"} 修改后如下: { "cmd": ["python3", "-u", "$file"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "selector": "source.python", "env": {"LANG": "en_US.utf-8"} } ```...
tianshl 亚虎国际pt客户端于 1个月前 阅读 13576

Python随机生成手机号

### 依据 ``` 根据2017年10月份最新的手机号正则进行编码, 正则如下: (13\d|14[579]|15[^4\D]|17[^49\D]|18\d)\d{8} ``` ### 代码 ``` # -*- coding: utf-8 -*- import random def create_phone(): # 第二位数字 second = [3, 4, 5, 7, 8][random.randint(0, 4)] # 第三位数字 third = { 3: random.randint(0, 9), 4: [5, 7, 9][random.randint(0, 2)], 5: [i for i in range(10) if i != 4][random.randint(0, 8)], 7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)], 8: random.randint(0, 9), }[second] # 最后八位数字 suffix = random.randint(9999999,100000000) # 拼接手机号 return "1{}{}{}".format(second, third, suffix) # 生成手机号 phone = create_phone() print(phone) ``` ### 运行结果 ``` 13937342780 15835720604 14589505530 ... ``` ### 验证 (使用正则验证) ``` # -*- coding: utf-8 -*- import random import re def create_phone(): # 第二位数字 second = [3, 4, 5, 7, 8][random.randint(0, 4)] # 第三位数字 third = { 3: random.randint(0, 9), 4: [5, 7, 9][random.randint(0, 2)], 5: [i for i in range(10) if i != ...
tianshl 亚虎国际pt客户端于 2个月前 阅读 297303 评论 1

Django开发环境

### 1.虚拟环境 ``` tianshl:workspace tianshl$ mkdir server tianshl:workspace tianshl$ cd server/ tianshl:server tianshl$ virtualenv venv --python=python3 tianshl:server tianshl$ source venv/bin/activate ``` ### 2. 安装依赖 ``` (venv) tianshl:server tianshl$ pip install django (venv) tianshl:server tianshl$ pip install djangorestframework ``` ### 3. 创建项目 ``` (venv) tianshl:server tianshl$ django-admin.py startproject server (venv) tianshl:server tianshl$ tree server/ server ├── manage.py └── server ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py ``` ### 4. 更新配置 ``` (venv) tianshl:server tianshl$ cd server/ (venv) tianshl:server tianshl$ vim server/settings.py # 1.修改 INSTALLED_APPS = ( ... 'rest_framework', ) # 2.添加 REST_FRAMEWORK = { # Use Django's standard `django.contrib.auth` permissions, # or allow read-only access for unauthenticated users. 'DEFAULT_PERMISSION_CLASSES': [ 'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly' ] }...
tianshl 亚虎国际pt客户端于 1个月前 阅读 12269

Java实现的k-means聚类算法

### 需求 ``` 对MySQL数据库中某个表的某个字段执行k-means算法,将处理后的数据写入新表中。 ``` ### 源码及驱动 ``` http://download.csdn.net/download/xiaobuding007/10203673 ``` ### 源码 ```java import java.sql.*; import java.util.*; /** * @author tianshl * @version 2018/1/13 上午11:13 */ public class Kmeans { // 源数据 private List origins = new ArrayList<>(); // 分组数据 private Map> grouped; // 初始质心列表 private List cores; // 数据源 private String tableName; private String colName; /** * 构造方法 * * @param tableName 源数据表名称 * @param colName 源数据列名称 * @param cores 质心列表 */ private Kmeans(String tableName, String colName,List cores){ this.cores = cores; this.tableName = tableName; this.colName = colName; } /** * 重新计算质心 * * @return 新的质心列表 */ private List newCores(){ List newCores = new ArrayList<>(); for(List v: grouped.values()){ newCores.add(v.stream().reduce(0, (sum, num) -> sum + num) / (v.size() + 0.0)); } Collections.sort(newCores); return newCores; } /...
tianshl 亚虎国际pt客户端于 1个月前 阅读 47633

Supervisor&Gunicorn&Django

# django ``` # 刚写的就不复制粘贴了 https://my.oschina.net/tianshl/blog/1611257 # 列一下目录结构 root@tianshl:~# cd server/ root@tianshl:~/server# tree server server ├── db.sqlite3 ├── manage.py └── server ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py ``` # gunicorn ##### 安装 ``` pip install gunicorn ``` ##### 配置 ``` # 修改django项目的settings.py INSTALLED_APPS = [ ...... 'gunicorn', ] ``` ##### 运行 ``` root@tianshl:~# cd /root/server/server/ root@tianshl:~/server/server# gunicorn --pythonpath /root/server/venv/bin/python3 -w 3 -b 0.0.0.0:80 server.wsgi # 测试能否正常运行, 然后ctrl+c结束进程 ``` # supervisor ##### 安装 ``` pip install supervisor ``` ##### 配置 ``` # 默认配置 # 使用echo_supervisord_conf命令查看默认配置 root@tianshl:~# echo_supervisord_conf # 自定义配置 root@tianshl:~# mkdir /etc/supervisor root@tianshl:~# mkdir /etc/supervisor/conf.d root@tianshl:~# echo_supervisord_conf > /etc/supervisor/supervisor.conf root@tianshl:~# vim /etc/su...
tianshl 亚虎国际pt客户端于 1个月前 阅读 12291

ELK -- ElasticSearch集群安装、配置及错误处理

### ElasticSearch ``` 现有三台服务器[192.168.1.30, 192.168.1.31, 192.168.1.32],使用这三台服务器搭建ElasticSearch集群 ``` #### CentOS 使用 yum 安装 ###### 编辑 repo ``` vim /etc/yum.repos.d/elasticsearch.repo # 内容如下 [elasticsearch-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ``` ###### 使用yum安装 ``` yum install elasticsearch ``` ###### 创建用户 ``` useradd elastic ``` ###### 修改权限 ``` # 数据 chown -R elastic:elastic /var/lib/elasticsearch # 日志 chown -R elastic:elastic /var/log/elasticsearch # 配置 chown -R elastic:elastic /etc/elasticsearch chown -R elastic:elastic /etc/sysconfig/elasticsearch # 指令 chown -R elastic:elastic /usr/share/elasticsearch ``` ###### 配置 ``` # 主节点 192.168.1.30 vim /etc/elasticsearch/elasticsearch.yml # 修改以下几项 cluster.name: etl_es node.name: node-30 node.master: true node.d...
tianshl 亚虎国际pt客户端于 1个月前 阅读 30040

mac - Android Studio - Android Device Monitor 打开空白或提示安装 jdk6

今天搞 autojs 的微信自动聊天,想到用Android Device Monitor看看微信的布局。打开Android Device Monitor 后提示安装 jdk6 心想没必要装这么老的版本吧 ,就去官网下了最新的 jdk8 ,装好后打开界面是空白的啥也没有。 网上查了一下发现有人说是最新的 jdk1.8.0_161 版本不行,换 jdk1.8.0_144 就可以了。 这里稍微要注意的是 老版本和新版本可以共存 但默认会使用新版本,所以这里要删除掉新版本,方法是: 然后重启Android Studio就 ok 了。 历史版本 Java 下载页面:http://www.oracle.com/technetwork/cn/java/archive-139210-zhs.html
dubox 亚虎国际pt客户端于 3小时前 阅读 3

数据挖掘入门笔记

最近想学习一下数据挖掘的相关知识,从网上找了本《数据挖掘:概念与技术》来看看。打算写一些笔记,记录一下比较基础又重要的知识点。希望自己能把基础打牢一点,也希望能帮到一些跟我一样打算入门的小白。 1、数据挖掘可以看做信息技术自然进化的结果,它是基于数据库和数据管理产业不断发展的产物。 2、什么是数据挖掘? 通俗来说数据挖掘就是从大量数据中挖掘有趣模式和知识的过程。它是我们从大型数据集中提炼知识的一项基本步骤,全部步骤为:数据清洗(消除噪声和删除不一致数据)、数据集成(多种数据源可以组合在一起)、数据选择(从数据库中提取与分析任务相关的数据)、数据变换(通过汇总或聚集操作,把数据变换和统一成适合挖掘的形式)、数据挖掘(使用智能方式提取数据模式)、模式评估(根据某种兴趣度度量,识别代表知识的真正有趣的模式)、知识表示(使用可视化和知识表示技术,向用户提供挖掘的知识)。 3、数据库和数据仓库的区别 关系数据库是表的汇集,每个表中的数据都是高度结构化的结果,每条数据都由多个相同类型属性构成,因此使用起来可以十分方便的抓住数据的主要特征(是数据挖掘研究的一种主要数据形式)。数据仓库是一个从多个数据源收集...
辣鸡大学生代表 亚虎国际pt客户端于 5小时前 阅读 3

關於金銀倉About_SHKNW

關於金銀倉About_SHKNW SHKNW means Shenzhen and Hongkong Kam Ngan Warehouse. 金銀倉shknw.com有點不好意思金銀倉是一個依靠互聯網技術,面向港澳深圳珠海銷售磁磚傢俬潔具的電商。 通過網絡發售形式,直接從佛山,肇慶,清遠,樂從,南莊廠家和倉庫發貨,也為客戶加工地腳線,打包貨物,報關過關,直接送到港澳客戶的樓下。 這樣的模式為客戶節省了很多北上深圳買磁磚傢俬的時間成本和精力。金銀倉為香港澳門客戶選購磁磚傢俬潔具,增添了一種選擇。 一步到位,最大限度讓利給終端客戶。  Launched in June 2014, SHKNW (www.shknw.com) is the online shopping destination of choice for Hongkong and Macau  consumers looking for tiles furniture and Sanitary ware.   SHKNW saves a lot of time and money for customers. Maximum discount to customers. 眾所周知,深圳香港的磁磚建材昂貴,就是貴在舖租的高昂,一切的客戶成本都因為店租地租的昂貴而不得不賣高價。店租地租的成本都加在磁磚銷售費用上。所以,香港的磁磚價格才昂貴。 為了更大節省成本,我們沒有獨立的門店。請客戶朋友諒解。 金銀倉的業務模式也很簡單:就是通過互聯網向港澳深圳珠海發售...
金銀瓷磚批發倉 亚虎国际pt客户端于 7小时前 阅读 5

Docker创建gogs

### *这篇内容不是介绍Docker基础篇的,是介绍使用Docker gogs镜像使用的。 ##### #从Docker Hub中提取图片。 $ docker pull gogs / gogs ##### #为卷创建本地目录。 $ mkdir -p /var/gogs ##### #第一次使用docker run。 $ docker run --name = gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs > -v /var/gogs是数据卷 > gogs/gogs 是images ##### #如果你停止了它,后面使用`docker start`启动它。 $ docker start gogs ##### #使用http://192.168.10.10:10080打开后进行安装 > 用户使用:git #安装完成后,目录结构是: 目录/var/gogs保存Git存储库和Gogs数据: ``` /var/gogs |-- git | |-- gogs-repositories |-- ssh | |-- # ssh public/private keys for Gogs |-- gogs |-- conf |-- data |-- log ``` 参考:https://github.com/gogits/gogs/tree/master/docker...
史帝文 亚虎国际pt客户端于 7小时前 阅读 5

建立一个家庭私有云盘方案系列教程+N2n+Nextcloud

由于国内网盘现状,很多数据取回都举步维艰,加上目前很多的会员制致使年费也达到了500多元,都足以买块3T硬盘的了,久而久之众多的限制也逐个而来。如此之下,不得不令我们考虑是否继续选择使用第三方托管存储。
Eller 亚虎国际pt客户端于 7小时前 阅读 60

CSS 页面内使用锚链接跳转

通过设置a标签,可以跳转带页面中指定的id元素处 <a href="http://chbailu.com/#footer">footer</a> <div id="header">header</div> <div id="content">content</div> <div id="footer">footer</div> <a href="http://chbailu.com/#header">header</a> <a href="http://chbailu.com/#content">content</a> 可以保存到url中,这样再次访问就还会定位到这个地方 file:///D:/code/webstrom/flex/%E9%94%9A%E9%93%BE%E6%8E%A5.html#content   虽然与vue-router冲突,但跳转功能是可以使用的,可能我测试的情况不是很复杂。。。 但至少无法通过url保存页面位置。。。,如果有重定向非法路由的话
阿豪boy 亚虎国际pt客户端于 7小时前 阅读 5

MRI是如何实现成像体素的空间定位的

磁共振的每一个信号都含有全层的信息,因此需要对磁共振信号进行空间定位编码,即频率编码和相位编码。接收线圈采集到的MR信号实际是带有空间编码信息的无线电波,属于模拟信号而非数字信息,需要经过模数转换(ADC)变成数字信息,后者被填充到k空间,称为数字点阵。k空间与磁共振信号的空间定位息息相关。 k空间也叫傅里叶空间,是带有空间定位编码信息的MR信号原始数字数据的填充空间,每一幅MR图像都有其相应的k空间数据点阵。对k空间的数据进行傅里叶变换,就能对原始数字数据中的空间定位编码信息进行解码,分解出不同频率、相位和幅度的MR信号,不同的频率和相位代表不同的空间位置,而幅度则代表MR信号强度。把不同频率、相位及信号强度的MR数字信号分配到相应的像素中,我们就得到了MR图像数据,即重建出了MR图像。傅里叶变换就是把k空间的原始数据点阵变换成磁共振图像点阵的过程。 相位编码梯度场-----射频脉冲+频率编码梯度场-----线圈采集得到MR模拟信号-----模数转换到数字信号-------填入k空间形成数字点阵-----傅里叶变换分解出不同频率、相位、强度的信号------分配到各个像素中形成图像点阵得到MR图像。 在二维图像的MR信号采集过程中,每个MR信号的频率...
天蚕宝衣 亚虎国际pt客户端于 8小时前 阅读 7

Auto.js 大象就医辅助挂号思路

辅助点击思路
你要爪子 亚虎国际pt客户端于 8小时前 阅读 3

TSS

任务状态段及描述符
lgj1107 亚虎国际pt客户端于 8小时前 阅读 3

python基础知识整理——迭代初探

    在了解Python的数据结构时,容器(container)、可迭代对象(iterable)、迭代器(iterator)、生成器(generator)、列表/集合/字典推导式(list,set,dict comprehension)众多概念参杂在一起,难免让初学者一头雾水,我将用一篇文章试图将这些概念以及它们之间的关系捋清楚。 1.容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中。通常这类数据结构把所有的元素存储在内存中(也有一些特例,并不是所有的元素都放在内存,比如迭代器和生成器对象)在Python中,常见的容器对象有: list, deque(队列), …. set, frozensets(), …. dict, defaultdict, OrderedDict, Counter, …. tuple, namedtuple, … str 容器比较容易理解,因为你就可以把它看作是一个盒子、一栋房子、一个柜子,里面可以塞任何东西。从技术角度来说,当它可以用来询问某个元素是否包含在其中时,那么这个对象就可以认为是一个容器,比如 list,set,tuples都是容器对象: 尽管绝大多数容器都提供了某种方式来获取其中的每一个元素,但这并不是容器本身提供的能力,而是可迭代对象赋予了容器这种能力,当然...
十年磨一剑3344 亚虎国际pt客户端于 8小时前 阅读 3

Linux系统开机启动流程(简述)

1)开机自检,加载BIOS信息     CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息等 2)MBR引导     硬盘的0柱面0磁道1扇区被称为MBR(Master Boot Reord)主引导记录,大小为512字节,里面存放预启动信息、分区表信息及分区标志等;分为两部分:第一部分为引导区,占446字节,第二部分为分区表,占66字节,记录硬盘的分区信息(其中前64字节是分区表信息,后2个字节是分区结束标识) 3)grub引导菜单     /etc/grub.conf文件为链接文件,系统读取内存中的grub配置信息,并依照此配置信息启动不同的操作系统 [root@c69-01 ~]# ll /etc/grub.conf lrwxrwxrwx. 1 root root 22 Feb 2 21:37 /etc/grub.conf -> ../boot/grub/grub.conf 4)加载内核kernel 5)启动init进程     在系统引导的过程中/sbin/init是内核第一个加载的程序,因此init进程对应的PID永远为1     该文件会读取/etc/inittab文件,并依据此文件进行初始化工作 6)读取inittab文件,执行rc.sysinit,rc等脚本     读取/etc/inittab文件,获取系统运行级别,如级别3,文本模式或字符模式     /etc/rc.d/rc.sysinit,Linux系统执行的第一个用户层文件,设定PATH、设定网络...
Linux_yk 亚虎国际pt客户端于 8小时前 阅读 5

JDBC【数据库连接池、DbUtils框架、分页】

1.数据库连接池 什么是数据库连接池 简单来说:数据库连接池就是提供连接的。。。 为什么我们要使用数据库连接池 数据库的连接的建立和关闭是非常消耗资源的 频繁地打开、关闭连接造成系统性能低下 编写连接池 编写连接池需实现java.sql.DataSource接口 创建批量的Connection用LinkedList保存【既然是个池,当然用集合保存、、LinkedList底层是链表,对增删性能较好】 实现getConnetion(),让getConnection()每次调用,都是在LinkedList中取一个Connection返回给用户 调用Connection.close()方法,Connction返回给LinkedList private static LinkedList<Connection> list = new LinkedList<>(); //获取连接只需要一次就够了,所以用static代码块 static { //读取文件配置 InputStream inputStream = Demo1.class.getClassLoader().getResourceAsStream("db.properties"); Properties properties = new Properties(); try { properties.load(inputStream); String url = properties.getProperty("url"); String username = properties.getProperty("username"); St...
Java3y 亚虎国际pt客户端于 9小时前 阅读 5

云计算简述

互联网技术的快速发展,信息量与数据量的飞速增长,导致单个计算机的计算能力和存储能力满足不了人们的需求,大大提高了成本。在这种情况下云计算应允而生。云计算将待处理的数据送到互联网上的超级计算机集群中进行计算和处理,把互联网变成一种全新的计算平台,能够在网络上实现按需购买与按使用付费的业务模式。   云计算是信息技术与服务的交付领域的重大进步。由于能够以自助、动态扩展、可计量的方式提供对共享计算资源池的按需访问,云计算在成本、速度和效率方面具有无与伦比的优势。
Idea 亚虎国际pt客户端于 9小时前 阅读 5

Linux环境下安装JDK

本文主要介绍的是如何是Linux环境下安装JDK的,因为Linux环境下,很多时候也离不开Java的,下面笔者就和大家一起分享如何jdk1.8的过程吧。 一、安装环境 操作系统:Red Hat Enterprise Linux 6 64 位(版本号6.6) JDK版本:1.8 工具:Xshell5、Xftp5 说明:本文是通过Xshell5工具远程连接Linux操作,如果是直接在Linux可视化界面操作那就更方便了,原理一样。 二、安装步骤 第一步:下载安装包 下载Linux环境下的jdk1.8,请去(官网)中下载jdk的安装文件; 由于我的Linux是64位的,因此我下载jdk-8u131-linux-x64.tar.gz。 如下图所示: 如果Linux本身连接到互联网,我们可以直接通过wget命令直接把JDK安装包下载下来,如图所示: 要是没有外网的环境,还是安装上面的方法下载安装包,然后上传到服务器当中 第二步、解压安装包 将我们下载好的JDK安装包上传到服务器,进行解压 解压命令进行解压 1 $ cd /home/cmfchina 2 $ tar -zxvf jdk-8u131-linux-x64.tar.gz 解压完成之后,可以在当前目录下看到一个名字为【jdk1.8.0_131】的目录,里面存放的是相关文件 我们要将解压后的【jdk1.8.0_131】里面的所有数据移动到我们需要安装的文件夹当中,我们打算将jdk安装在usr/j...
west_coast 亚虎国际pt客户端于 11小时前 阅读 5 评论 2

使用Shiro进行权限控制的实现流程

超级简单
BigData_晓为 亚虎国际pt客户端于 12小时前 阅读 3

hls rtmp h5播放器

http://web.jobbole.com/88543/
yizhichao 亚虎国际pt客户端于 12小时前 阅读 9

[java]Eclipse中运行Maven打包编译时出现:Perhaps you are running on a JRE rather than a JDK?

![输入图片说明](https://static.oschina.net/uploads/img/201802/19175351_9cnL.png "在这里输入图片标题") ![![输入图片说明](https://static.oschina.net/uploads/img/201802/19175405_ZiFv.png "在这里输入图片标题")](https://static.oschina.net/uploads/img/201802/19175405_ZiFv.png "在这里输入图片标题")
_______- 亚虎国际pt客户端于 12小时前 阅读 7

自更新 shell 脚本

有时脚本要存个变量的值下次使用,一般用外部文件存储,对于简单需求略麻烦。 不如修改脚本自己
amita 亚虎国际pt客户端于 13小时前 阅读 5

Tiny4412裸机程序之代码重定位初体验

从前面一节Exynos 4412的启动过程分析 ,我们知道:一上电,exynos4412首先执行固化在IROM中的代码,iROM首先设置程序运行环境 (比如关看门狗、关中断、关MMU 、设置栈 、设置栈 、启动PLL等 ),然后根据OM引脚确定启动设备 (NAND Flash/SD 卡/其他 ),把 BL1从里面读出存入iRAM的0x02021400地址处,最后启动 BL1; BL1从SD卡适当的位置读入14K 字节的数据,存在iRAM地址0x02023400处,所以BL2不能大于(14K – 4) 字节,这里引出了为什么写这一节的原因:如果我们的程序很大,大于14K怎么办???? 下面我们先来介绍两个概念: 一是程序当前所处的地址,即程序在运行时,所处的当前地址;二是程序的链接地址,即程序运行时应该位于的运行地址。编译程序时,可以指定程序的链接地址。 什么是重定位 对于Tiny4412而言,前面我们已经说过:启动时BL1只会从sd等启动设备中拷贝14K的代码到IRAM中,那么当我们的程序超过14K怎么办?那就需要我们在前14K的代码中将整个程序完完整整地拷贝到DRAM等其他更大存储空间,然后再跳转到DRAM中继续运行我们的代码,这个拷贝然后跳转的过程就叫重定位。 本章中我们主要学习如何重定位,但是并不会涉如何使用到DRAM,而是简单地将代码从I...
幸福阶梯 亚虎国际pt客户端于 14小时前 阅读 6

Linux搭建Python3、Django环境

好久没写了,朋友们,我又回来了。 安装Python3 Python全部版本下载地址:         https://www.python.org/ftp/ 解决RedHat,使用Python3退格出现乱码问题:         yum -y install readline-devel.x86_64 下载Python3:         wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz 解压:         tar -zxvf Python-3.6.4.tgz 进入解压好的Python3路径:         cd Python-3.6.4 创建安装目录:         mkdir /usr/local/python3 设置安装路径:         ./configure --prefix=/usr/local/python3 编译:         make 安装:         make install 备份旧版本:         mv /usr/bin/python /usr/bin/python2 创建Python3环境:         ln -s /usr/local/python3/bin/python3  /usr/bin/python 查找yum文件路径:         whereis yum 修改yum配置文件:         vi /usr/bin/yum 将原来的python修改成:         #!/usr/bin/python2.7    安装Setuptools 安装需要的模块:             yum install zlib         ...
MoreYoungG 亚虎国际pt客户端于 15小时前 阅读 3

SpringBoot项目中使用AOP

## 1.概述 将通用的逻辑用AOP技术实现可以极大的简化程序的编写,例如验签、鉴权等。Spring的声明式事务也是通过AOP技术实现的。 具体的代码参照 [示例项目 https://github.com/qihaiyan/springcamp/tree/master/spring-aop](https://github.com/qihaiyan/springcamp/tree/master/spring-aop) Spring的AOP技术主要有4个核心概念: 1. Pointcut: 切点,用于定义哪个方法会被拦截,例如 ```execution(* cn.springcamp.springaop.service.*.*(..))``` 2. Advice: 拦截到方法后要执行的动作 3. Aspect: 切面,把Pointcut和Advice组合在一起形成一个切面 4. Join Point: 在执行时Pointcut的一个实例 5. Weaver: 实现AOP的框架,例如 AspectJ 或 Spring AOP ## 2. 切点定义 常用的Pointcut定义有 execution 和 [@annotation](https://my.oschina.net/annotation) 两种。execution 定义对方法无侵入,用于实现比较通用的切面。[@annotation](https://my.oschina.net/annotation) 可以作为注解加到特定的方法上,例如Spring的Transaction注解。 execution切点定义应该放在一个公共的类中,集中管理切点定义。 示例: ```java public class CommonJoinPointConfig { @Pointcut("ex...
QiHaiYan 亚虎国际pt客户端于 1天前 阅读 542 评论 1

NEO从源码分析看网络通信

### **_0x00 前言_** NEO被称为中国版的Ethereum,支持C#和java开发,并且在社区的努力下已经把SDK拓展到了js,python等编程环境,所以进行NEO开发的话是没有太大语言障碍的。 比特币在解决拜占庭错误这个问题时除了引入了区块链这个重要的概念之外,还引入了工作量证明(PoW)这个机智的解决方案,通过数学意义上的难题来保证每个区块创建都需要付出计算量。然而实践已经证明,通过计算来提供工作量证明,实在是太浪费:全世界所有的完全节点都进行同样的计算,然而只有一个节点计算出的结果会被添加到区块链中,其余节点计算消耗的电力就都白白浪费了。尤其,工作量证明存在一个51%的可能攻击方案,就是说只要有人掌握了世界上超过50%的算力,那么他就可以对比特币这个系统进行攻击,重置区块链。中本聪先生发明这个算力工作量证明方法的时候大概没有料到会有人专门为了挖矿开发出ASIC矿机。 NEO在解决这些问题的时候提出了一个新的共享机制DBFT 全称为 Delegated Byzantine Fault Tolerant。NEO将节点分为两种,一种为普通节点,不参与共识,也就是不进行认证交易签名区块的过程。另一种是则是共识节点。顾名思义,就是可以参与共识的节点,这部分基础概念可以参考[官方...
暖冰 亚虎国际pt客户端于 5天前 阅读 472 点赞 1

JSON入门看这一篇就够了

什么是JSON JSON:JavaScript Object Notation 【JavaScript 对象表示法】 JSON 是存储和交换文本信息的语法。类似 XML。 JSON采用完全独立于任何程序语言的文本格式,使JSON成为理想的数据交换语言S 为什么需要JSON 提到JSON,我们就应该和XML来进行对比。XML也是一种存储和交换文本信息的手段。那么JSON好在哪里呢?? JSON 比 XML 更小、更快,更易解析。 javaScript原生支持JSON,解析速度会很快 XML解析成DOM对象的时候,浏览器【IE和fireFox】会有差异 使用JSON会更简单     更加容易创建JavaScript对象 var p = {'city':['北京','上海','广州','深圳']}; for(var i=0;i<p.city.length;i++){ document.write(p.city[i]+"<br/>"); } JSON语法 客户端与服务端的交互数据无非就是两种 数组 对象 于是乎,JSON所表示的数据要么就是对象,要么就是数组 JSON语法是javaScript语法的子集,javaScript用[]中括号来表示数组,用{}大括号来表示对象,JSON亦是如此 JSON数组: var employees = [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName": "Carter" } ]; JSON对象 ...
Java3y 亚虎国际pt客户端于 1周前 阅读 1253 评论 13 点赞 1

你的斗地主能拿多少炸?

最近无聊,想知道一下玩斗地主的话我能有多大的概率拿到炸弹(4张同点数牌 或 集齐大小王)。但是我概率学学得不好,于是想到用统计学来试试,随手写了一个程序模拟一下斗地主的发牌过程 #### 面向对象Card 首先依据OOP思想,我把牌看作是一个对象,点数与花色是其属性,为了处理大小王加入了Type属性 ```java public class Card { Suit suit; Size size; Type type; Card(Suit suit, Size size) { this.suit = suit; this.size = size; this.type = Type.Ordinary; } Card(Type type) { if (type.equals(Type.Ordinary)) { throw new RuntimeException("非法参数"); } this.type = type; } } ``` 三个属性我都用了枚举类来表示,纯粹是因为既然是面向对象,那么就纯粹一点 ```java public enum Size { P3(0), P4(1), P5(2), P6(3), P7(4), P8(5), P9(6), P10(7), J(8), Q(9), K(10), A(11), P2(12); int sequence; Size(int sequence) { this.sequence = sequence; } } ``` Size表示点数的大小,按从小到大排序。加入sequence属性目的是为了在统计时方便处理 ```java public enum Suit { Spade(4), Heart(3), Club(2), Diamond(1); // 权重 int weight; Suit(int weight)...
BekeyChao 亚虎国际pt客户端于 1周前 阅读 717 评论 10 点赞 1

Machine Learning:十大机器学习算法

- 机器学习算法分类:监督学习、无监督学习、强化学习 - 基本的机器学习算法:线性回归、支持向量机(SVM)、最近邻居(KNN)、逻辑回归、决策树、k平均、随机森林、朴素贝叶斯、降维、梯度增强
RiboseYim 亚虎国际pt客户端于 1周前 阅读 1800 评论 9 点赞 5

你需要Mobx还是Redux?

在过去一年,越来越多的项目继续或者开始使用React和Redux开发,这是目前前端业内很普遍的一种前端项目解决方案,但是随着开发项目越来越多,越来越多样化时,个人又有了不同的感受和想法。是不是因为已经有了一个比较普遍的,熟悉的项目技术栈,我们就一直完全沿用呢,有没有比他更适合的方案呢?恰逢团队最近有一个新项目,于是博主开始思考,有没有可能使用其他可替代技术开发呢?既能提高开发效率,又能拓展技术储备和眼界,经过调研,选择了Mobx,最终使用React+Mobx搭建了新项目,本篇总结分享从技术选型到项目实现的较完整过程,希望共同进步。
熊建刚 亚虎国际pt客户端于 1周前 阅读 710 评论 4 点赞 1

大数据平台Hadoop的分布式集群环境搭建

1 概述 本文章介绍大数据平台Hadoop的分布式环境搭建、以下为Hadoop节点的部署图,将NameNode部署在master1,SecondaryNameNode部署在master2,slave1、slave2、slave3中分别部署一个DataNode节点 NN=NameNode(名称节点) SND=SecondaryNameNode(NameNode的辅助节点) DN=DataNode(数据节点) 2 前期准备 (1)准备五台服务器 如:master1、master2、slave1、slave2、slave3 (2)关闭所有服务器的防火墙 $ systemctl stop firewalld $ systemctl disable firewalld (3)分别修改各服务器的/etc/hosts文件,内容如下: 192.168.56.132 master1 192.168.56.133 master2 192.168.56.134 slave1 192.168.56.135 slave2 192.168.56.136 slave3 注:对应修改个服务器的/etc/hostname文件,分别为 master1、master2、slave1、slave2、slave3 (4)分别在各台服务器创建一个普通用户与组 $ groupadd hadoop #增加新用户组 $ useradd hadoop -m -g hadoop #增加新用户 $ passwd hadoop #修改hadoop用户的密码 切换至hadoop用户:su hadoop (5)各服务器间的免密码登录配置,分别在各自服务中执行一次 $ ssh-keygen -t rsa #一直按回车,会生成公私钥 $ ssh-copy-id hadoop@m...
FEINIK 亚虎国际pt客户端于 1周前 阅读 1448 评论 5 点赞 6

Java可以如何实现文件变动的监听

应用中使用logback作为日志输出组件的话,大部分会去配置 `logback.xml` 这个文件,而且生产环境下,直接去修改logback.xml文件中的日志级别,不用重启应用就可以生效 那么,这个功能是怎么实现的呢?
小灰灰Blog 亚虎国际pt客户端于 2周前 阅读 1674 评论 12 点赞 3

高并发&高可用系统应对策略的一些思考

**说明:** - 仅仅是自己的一些观点和思考,如有问题欢迎指正 - 文中【】内提到的spring boot starter是自己封装的,地址:https://gitee.com/itopener/springboot #### **解耦神器:MQ** MQ是分布式架构中的解耦神器,应用非常普遍。有些分布式事务也是利用MQ来做的。由于其高吞吐量,在一些业务比较复杂的情况,可以先做基本的数据验证,然后将数据放入MQ,由消费者异步去处理后续的复杂业务逻辑,这样可以大大提高请求响应速度,提升用户体验。如果消费者业务处理比较复杂,也可以独立集群部署,根据实际处理能力需求部署多个节点。需要注意的是: - 需要确认消息发送MQ成功 比如RabbitMQ在发送消息到MQ时,就有发送回调确认,虽然不能够完全避免消息丢失,但也能够避免一些极端情况下消息发送失败的情况了。可以利用MQ的事务来避免更多情况的消息丢失 - 消息持久化 需要注意配置消息持久化,避免MQ集群挂掉的情况下大量丢失消息的情况 - 消息消费的幂等性 正常来说消息是不会重复发送的,但是一些特殊情况也可能会导致消息重复发送给消费者,一般会在消息中加一个全局唯一的流水号,通过流水号来判断消息是否已经消费过 - 注意用户体验 使用异步处理是在提高系统吞吐量...
J猿 亚虎国际pt客户端于 2周前 阅读 3647 评论 24 点赞 20

JSP自定义标签就是如此简单

为什么要用到简单标签? 上一篇博客中我已经讲解了传统标签,想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并且还要知道SKIP_BODY,EVAL_BODY等等的变量代表着什么,在什么方法中使用。这样实在是太麻烦了! 因此,为了简化标签开发的复杂度,在JSP 2.0中定义了一个更为简单、便于编写和调用的SimpleTag接口来实现标签的功能。。 一般来说,实现了SimpeTag接口的标签称之为简单标签 SimpleTag接口 首先我们来看一下它的源码吧: public interface SimpleTag extends JspTag { void doTag() throws JspException, IOException; void setParent(JspTag var1); JspTag getParent(); void setJspContext(JspContext var1); void setJspBody(JspFragment var1); } setParent()和getParent()方法就不多说了,我们来看一下剩下的3个方法: void doTag() throws JspException, IOException; void setJspContext(JspContext var1); void setJspBody(JspFragment var1); 明显地: doTag()就是我们要写代码处理逻辑地方 setJspContext(JspContext var1)是将PageContext对象传递给标...
Java3y 亚虎国际pt客户端于 2周前 阅读 1880 评论 14 点赞 3

如何编写高性能的 RPC 框架

在 [RPC Benchmark Round 1](https://my.oschina.net/u/1014759/blog/1616349) 中,[Turbo](https://github.com/hank-whu/turbo-rpc) 性能炸裂表现强悍,并且在 listUser 这一项目中,取得了 10x dubbo 性能的好成绩。本文将介绍 [Turbo](https://github.com/hank-whu/turbo-rpc) 强悍性能背后的原理,并探讨如何编写高性能的 RPC 框架。 ## 过早的优化是万恶之源? 这句话是 *The Art of Computer Programming* 作者,图领奖得主 Donald Knuth 大神说的。不过对于框架设计者而言,这句话并不正确。在设计一款高性能的基础框架时,必须始终重视性能优化,并将性能测试贯穿于整个设计开发过程中。这方面做到极致的类库有 [Disruptor](https://github.com/LMAX-Exchange/disruptor) [JCTools](https://github.com/JCTools/JCTools) [Agrona](https://github.com/real-logic/agrona) [DSL-JSON](https://github.com/ngs-doo/dsl-json) 等等,这几个高性能类库都坚持一个原则:不了解性能的外部类库坚决不用,如果现有的类库不能满足性能要求,那就重新设计一个。作为 [Turbo](https://github.com/hank-whu/turbo-rpc) 的设计者,我也尽量坚持这一原则,努力做到 Benchmark 驱动...
鲁小憨 亚虎国际pt客户端于 2周前 阅读 4151 评论 51 点赞 17

腾讯技术分享:社交网络图片的带宽压缩技术演进之路

为了进一步降低运营带宽成本,减小用户访问流量及提升页面加载速度,社交网络 CDN运维紧跟行业图片优化趋势,创新引入WebP、SharpP、自适应分辨率、Guetzli等图像压缩技术到现网,经过三年多的多部门联合攻关,已逐渐形成一套覆盖全图片类型(JPEG、JPG、PNG、WebP、GIF)多场景的图片压缩运营体系,适用于各类型终端,每年节约外网带宽几百G。
JackJiang- 亚虎国际pt客户端于 2周前 阅读 3757 评论 7 点赞 3

RabbitMQ 实战(二)Spring Boot 整合 RabbitMQ

这篇文章主要讲基本的整合。先把代码跑起来,再说什么高级特性。 ## RabbitMQ 中的一些术语 如果你打开 RabbitMQ web 控制台,你会发现其中有一个 Exhanges 不好理解。下面简单说明一下。 ![](http://img.nextyu.com/2018-02-04-15177510378323.jpg) ### 交换器(Exchange) 交换器就像路由器,我们先是把消息发到交换器,然后交换器再根据路由键(routingKey)把消息投递到对应的队列。(明白这个概念很重要,后面的代码里面充分体现了这一点) ### 队列(Queue) 队列很好理解,就不用解释了。 ### 绑定(Binding) 交换器怎么知道把这条消息投递到哪个队列呢?这就需要用到绑定了。大概就是:使用某个路由键(routingKey)把某个队列(Queue)绑定到某个交换器(Exchange),这样交换器就知道根据路由键把这条消息投递到哪个队列了。(后面的代码里面充分体现了这一点) ## 加入 RabbitMQ maven 依赖 ``` org.springframework.boot spring-boot-starter-amqp ``` 再加入另外一个依赖(这个依赖可省略,主要是用来简化代码) ``` cn.hutool hutool-all 4.0.2 ``` ## RabbitMQConfig.java 配置 ``` @Configuration public class RabbitMQConfig { public final static Str...
皂白 亚虎国际pt客户端于 2周前 阅读 3552 评论 11 点赞 9

怎样对 RPC 进行有效的性能测试

在 RPC Benchmark Round 1 中 turbo 的成绩一骑绝尘,实力碾压众 rpc 框架。对此,很多人表示不服气,认为作者既是运动员又是裁判员有失公平。所以我认为有必要解释一下 rpc-benchmark 的公正性,以及为什么 turbo 能够如此强悍。 参考对象 rpc-benchmark 灵感源自 techempower-benchmarks,为了能够评测众多服务器框架,techempower-benchmarks 提供了6个测试用例: JSON serialization This test exercises the framework fundamentals including keep-alive support, request routing, request header parsing, object instantiation, JSON serialization, response header generation, and request count throughput. Single database query This test exercises the framework's object-relational mapper (ORM), random number generator, database driver, and database connection pool. Multiple database queries This test is a variation of Test #2 and also uses the World table. Multiple rows are fetched to more dramatically punish the database driver and connection pool. At the highest queries-per-request tested (20), this test...
鲁小憨 亚虎国际pt客户端于 3周前 阅读 1997 评论 22 点赞 4

利用K8S技术栈打造个人私有云(连载之:K8S集群搭建)

![iPhone 5S](http://upload-images.jianshu.io/upload_images/9824247-b8c9f19a9e567080.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) --- 最近被业务折腾的死去活来,实在没时间发帖,花了好多个晚上才写好这篇帖子,后续会加油的! --- 【利用K8S技术栈打造个人私有云系列文章目录】 - [利用K8S技术栈打造个人私有云(连载之:初章) ](https://www.jianshu.com/p/9bc87b5380e8) - [利用K8S技术栈打造个人私有云(连载之:K8S集群搭建)](https://www.jianshu.com/p/7d1fb03b8925) - [利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手)](https://www.jianshu.com/p/5b0cd99e0332) - 利用K8S技术栈打造个人私有云(连载之:基础镜像制作与实验)(Coming Soon...) - 利用K8S技术栈打造个人私有云(连载之:资源控制研究)(Coming Soon...) - 利用K8S技术栈打造个人私有云(连载之:私有云客户端打造)(Coming Soon...) - 利用K8S技术栈打造个人私有云(连载之:总结与升华)(Coming Soon...) ----- ## 环境介绍 > 玩集群嘛,当然要搞几台机器做节点!无赖自己并没有性能很强劲的多余机器,在家里翻箱倒柜,找出了几台破旧的本子,试试看吧,...
hansonwang 亚虎国际pt客户端于 3周前 阅读 4258 评论 30 点赞 8

RPC Benchmark,Dubbo垫底

rpc-benchmark 说明及答疑 几乎所有的 RPC 框架都宣称自己是“高性能”的, 那么实际结果到底如何呢, 让我们来做一个性能测试吧. 项目地址:   https://github.com/hank-whu/rpc-benchmark   https://gitee.com/hank-whu/rpc-benchmark 测试说明 仅限于Java. 客户端使用JMH进行压测, 32 线程, 10 次预热, 3 次运行. 每次运行前都会执行 killall java, 但没有在每轮测试时重启操作系统. 所有类库版本在亚虎国际pt客户端时都是最新的, 除非存在bug. 所有框架都尽量参考该项目自带的Benchmark实现. 将会一直持续, 不定期亚虎国际pt客户端测试结果. 测试用例 boolean existUser(String email), 判断某个 email 是否存在. boolean createUser(User user), 添加一个 User. User getUser(long id), 根据 id 获取一个用户. Page<User> listUser(int pageNo), 获取用户列表. 运行结果 生成时间: 2018-01-28 14:36:24. 硬件环境: 阿里云 ecs.c4.xlarge, Intel Xeon E5-2667v4, 4CPU 8GB RAM 两台. yahu999环境: Ubuntu x64 16.04.5, Java HotSpot(TM) 64-Bit Server VM 9.0.4+11. 启动参数: java -server -Xmx1g -Xms1g -XX:MaxDirectMemorySize=1g -XX:+UseG1GC. existUser 判断某个 email 是否存在 framewor...
鲁小憨 亚虎国际pt客户端于 3周前 阅读 5278 评论 78 点赞 5

大型高并发与高可用的三层缓存架构总结

对于高并发架构,毫无疑问缓存是最重要的一环,对于大量的高并发,可以采用三层缓存架构来实现,nginx+redis+ehcache
高级架构师 亚虎国际pt客户端于 3周前 阅读 4504 评论 4 点赞 4

mybatis-plus思维导图,让mybatis-plus不再难懂

Mybatis-Plus(简称MP)是一个Mybatis的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
java思维导图 亚虎国际pt客户端于 3周前 阅读 2036 评论 8 点赞 1

Spring Boot中使用LDAP来统一管理用户信息

> 很多时候,我们在构建系统的时候都会自己创建用户管理体系,这对于开发人员来说并不是什么难事,但是当我们需要维护多个不同系统并且相同用户跨系统使用的情况下,如果每个系统维护自己的用户信息,那么此时用户信息的同步就会变的比较麻烦,对于用户自身来说也会非常困扰,很容易出现不同系统密码不一致啊等情况出现。如果此时我们引入LDAP来集中存储用户的基本信息并提供统一的读写接口和校验机制,那么这样的问题就比较容易解决了。下面就来说说当我们使用Spring Boot开发的时候,如何来访问LDAP服务端。 ## LDAP简介 LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统,其专门针对读取,浏览和搜索操作进行了特定的优化。目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。目录一般不支持通用数据库针对大量更新操作操作需要的复杂的事务管理或回卷策略。而目录服务的更新则一般都非常简单。这种目录可以存储包括个人信息、web链结、jpeg图像等各种信息。为了访问存储在目录中的信息,就需要使用运行在TCP/IP 之上的访问协议—LDAP。 LDAP目录中的信息是是按...
程序猿DD 亚虎国际pt客户端于 3周前 阅读 2935 评论 3 点赞 2

基于 HTML5 WebGL 的 3D 网络拓扑结构图

现在,3D 模型已经用于各种不同的领域。在医疗行业使用它们制作器官的精确模型;电影行业将它们用于活动的人物、物体以及现实电影;视频游戏产业将它们作为计算机与视频游戏中的资源;在科学领域将它们作为化合物的精确模型;建筑业将它们用来展示提议的建筑物或者风景表现;工程界将它们用于设计新设备、交通工具、结构以及其它应用领域;在最近几十年,地球科学领域开始构建三维地质模型,而且 3D 模型经常做成动画,例如,在故事片电影以及计算机与视频游戏中大量地应用三维模型。它们可以在三维建模工具中使用或者单独使用。为了容易形成动画,通常在模型中加入一些额外的数据,例如,一些人类或者动物的三维模型中有完整的骨骼系统,
xhload3d 亚虎国际pt客户端于 3周前 阅读 2675 评论 3 点赞 7
顶部