大连249建站之家免费精品网站自助建设系统平台免费微
技术干货
  • 249建站之家:MySQL数据库性能优化之缓存参数优化

    数据库属于 IO密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级。所以,要优化数据库,首先第一步需要优化的就是 IO,尽可能将磁盘IO转化为内存IO。本文先从 MySQL 数据库IO相关参数(缓存参数)的角度来看看可以通过哪些参数进行IO优化:query_cache_size/query_cache_type (global) Query cache 作用于整个 MySQL Instance,主要用来缓存 MySQL 中的 ResultSet,也就是一条SQL语句执行的结果集,所以仅仅只能针

  • 249建站之家:搭建 Keepalived + Nginx + Tomcat 的高可用负载均衡架构

    1 概述初期的互联网企业由于业务量较小,所以一般单机部署,实现单点访问即可满足业务的需求,这也是最简单的部署方式,但是随着业务的不断扩大,系统的访问量逐渐的上升,单机部署的模式已无法承载现有的业务量,需要进行服务集群化部署,本文主要介绍服务端Tomcat多实例部署,以及如何保证web服务的高可用方案。Nginx 是一个高性能的 HTTP反向代理服务器Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以利用其来避免服务的单点故障Tomcat 是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器。2 Nginx的高可用

  • 249建站之家:简述 Docker

    今天小编为猿猿们整理了Docker的相关内容,如果你关注新技术发展,一定会关注Docker,不管是云服务还是微服务,越来越多的厂商都开始基于Docker作为基础设施自动化工具。那么什么是 Docker?Docker与传统的虚拟机有什么区别?为何要采用 Docker?如何使用 Docker?下面就来为大家一 一解答这些问题。什么是 DockerDocker 是开源的应用容器引擎。Docker 可以让你将所有应用软件以及它的以来打包成软件开发的标准化单元。Docker 容器将软件以及它运行安装所需的一切文件(代码、运行时、系统工具、系统库)打包到一起,这就保证了不管是在什

  • 249建站之家:如何避免死锁

    加锁顺序当多个线程需要相同的一些锁,但是按照不同的顺序加锁,死锁就很容易发生。如果能确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。看下面这个例子:Thread 1: lock A lock BThread 2: wait for A lock C (when A locked)Thread 3: wait for A wait for B wait for C如果一个线程(比如线程3)需要一些锁,那么它必须按照确定的顺序获取锁。它只有获得了从顺序上排在前面的锁之后,才能获取后面的锁。例如,线程2和线程3只有在获取了锁A之后才能尝试获取锁C(获取锁A是获取锁C的必要条件)。因为线程1已经拥有了锁A,所

  • 249建站之家:PHP 断点续传实例详解

    在做一个案例,要给客户端做断点续传的服务,断点续传主要是HTTP协议中的Content-Range报头。其理解如下:Content-Range:响应资源的范围。可以在多次请求中标记请求的资源范围,在连接断开重新连接时,客户端只请求该资源未被下载的部分,而不是重新请求整个资源,实现了断点续传。迅雷就是基于这个原理,使用多线程分段读取网络上的资源,最后合并。关于PHP使用多线程实现断点续传稍后讨论。本文只实现简单的断点续传。$file = $_GET['video'];$size = filesize($file);$size2 = $size-1;$range = 0;if(isset($_SERVER['HTT

  • 249建站之家:iOS 如何自动移除KVO观察者

    我们都知道, 使用KVO模式, 对某个属性进行监听时, Observer 需要在必要的时刻进行移除, 否则 App 必然会 Crash. 这个问题有点烦人, 因为偶尔会忘记写移除 Observer 的代码...我一直想要这样一个效果:只管监听, 并处理监听方法. 不去分心, 管何时移除 Observer , 让其能够适时自动处理.所幸, 它能够实现, 先预览一下:@interface NSObject (SJObserverHelper)- (void)sj_addObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath;@end@interface SJObserverHelper : NSObject@property (nonatomic, unsafe_unretained) id target;@

  • 249建站之家:iOS将文件切片储存并上传仿断点续传机制

    简介:在开发中,一般在视频类的app或者与硬件交互的app中会有将数据文件上传到云端,少数社交app上传图片也比较多。下面讲的是将数据文件(txt类型)切片储存到本地并逐片上传到云端模仿断点续传的机制,但事实上,这个操作并不是真正的断点续传。google了一下,关于切分的文章也蛮多,但是都比较雷同,接下来要分享将数据写进txt并切片储存到本地,一片一片传到云端的整个流程。步骤:1、将获取到的数据写进文件(总文件)2、将总文件按照需求分割并储存到本地3、创建数据库(保存分片数据的ID、路径等)4、根据路径去本地将分片的数据上

  • 249建站之家:如何在不会导致服务器宕机的情况下,用 PHP 读取大文件

    作为PHP开发人员,我们并不经常需要担心内存管理。PHP 引擎在我们背后做了很好的清理工作,短期执行上下文的 Web 服务器模型意味着即使是最潦草的代码也不会造成持久的影响。很少情况下我们可能需要走出这个舒适的地方 ——比如当我们试图在一个大型项目上运行 Composer 来创建我们可以创建的最小的 VPS 时,或者当我们需要在一个同样小的服务器上读取大文件时。后面的问题就是我们将在本教程中深入探讨的。在 GitHub上可以找到本教程的源码。衡量成功的标准确保我们对代码有改进的唯一方法是测试一个不好的情况,然后将我们修复之后的测量

  • 249建站之家:对Swoole、Workerman和php自带的socket的理解

    为什么php自带的socket不怎么听说,基本都是用swoole,workerman去实现?1、PHP的socket扩展是一套socket api,仅此而已。swoole,用C实现,它的socket是C 库的socket,更加底层可控。workerman,如题主所说,使用PHP实现,那它的socket就是用PHP socket扩展啊。只是对其进行工程化开发,成了一个框架。2、swoole 框架和 swoole 扩展是不一样的。swoole 框架也可以脱离 swoole 扩展来使用。swoole 扩展将进程管理,tcp 监听这些工作在 C 里面做了,以扩展的形式提供给 PHP 一些接口来调用。workerman 就是原生的使用 php stream 相关的函数

  • 249建站之家:隐马尔科夫模型 python 实现简单拼音输入法

    在网上看到一篇关于隐马尔科夫模型的介绍,觉得简直不能再神奇,又在网上找到大神的一篇关于如何用隐马尔可夫模型实现中文拼音输入的博客(http://sobuhu.com/ml/2013/03/07/hmm-pinyin-input-method.html),无奈大神没给可以运行的代码,只能纯手动网上找到了结巴分词的词库,根据此训练得出隐马尔科夫模型,用维特比算法实现了一个简单的拼音输入法。githuh地址:https://github.com/LiuRoy/Pinyin_Demo原理简介隐马尔科夫模型抄一段网上的定义:隐马尔可夫模型 (Hidden Markov Model) 是一种统计模型,用来描述一个含有隐含未知参数的

  • 249建站之家:PHP中性能优化之生成器

    PHP生成器是PHP的5.5.0版本引入的功能,生成器实际上就是简单的迭代器。生成器会根据需求计算产出迭代的值,而标准的PHP迭代器经常在内存中执行迭代操作,这要预先计算出完整数据集,性能较低。如果使用生成器,即时计算并产出后续值,就可以明显减少不必要的内存占用。创建生成器生成器从不返回值,只是产出值。?phpfunction myGenerator() { yield 'v1'; yield 'v2'; yield 'v3';}调用生成器函数时,PHP会反悔一个属于Generator类的对象。这个对象是可以foreach迭代的。每次迭代,PHP要求这个实例计算并提供

  • 249建站之家:为什么我们觉得javascript很难学?

    经常有学员在抱怨现在前端技术1、更新太快,完全来不及学。2、javascript太难学。(抗拒学习的同学很多哦)3、已有部分同学放弃了前端 今天我们就对javascript太难学做一点简单的分析 经过我对上述同学的调查取样和”尸检”,发现了这样一个现象。 很多同学一听javascript. 立刻大脑中浮现出 殊不知,以上代码包含了两部分 1、javascript的语法(也就是我们常听到的ECMAScript) 2、浏览器中DOM对象的操作 其实很多同学反反复复的在学习DOM操作,尤其是配合jQuery后完全觉得自己很精通javascript了。然而,最精髓的ECMAScript根本没有去学

  • 249建站之家:精心收集的 48 个 JavaScript 代码片段

    该项目来自于 Github 用户 Chalarangelo,目前已在 Github 上获得了 5000 多Star,精心收集了多达 48 个有用的 JavaScript 代码片段,该用户的代码可以让程序员在 30 秒甚至更少的时间内理解这些经常用到的基础算法,来看看这些 JavaScript 代码都传达出了什么吧!Anagrams of string(带有重复项)使用递归。对于给定字符串中的每个字母,为字母创建字谜。使用map()将字母与每部分字谜组合,然后使用reduce()将所有字谜组合到一个数组中,最基本情况是字符串长度等于2或1。const anagrams = str = { if (str.length = 2) return str.

  • 249建站之家:线程安全与共享资源

    今天,小编给猿猿们整理了线程安全与资源共享方面的知识,希望会对大家学习有所帮助▶允许被多个线程同时执行的代码称作线程安全的代码。线程安全的代码不包含竞态条件。当多个线程同时更新共享资源时会引发竞态条件。因此,了解Java线程执行时共享了什么资源很重要。局部变量局部变量存储在线程自己的栈中。也就是说,局部变量永远也不会被多个线程共享。所以,基础类型的局部变量是线程安全的。下面是基础类型的局部变量的一个例子:public void someMethod(){ long threadSafeInt = 0; threadSafeInt++;}局部的对象引用对象的局部

  • 249建站之家:以 Python 语言为例动态语言的灵活性是把双刃剑

    本文有些零碎,总题来说,包括两个问题:(1)可变对象(最常见的是list dict)被意外修改的问题,(2)对参数(parameter)的检查问题。这两个问题,本质都是因为动态语言(动态类型语言)的特性造成了,动态语言的好处就不细说了,本文是要讨论因为动态--这种灵活性带来的一些问题。什么是动态语言(Dynamic Programming language)呢,是相对于静态语言而言,将很多静态语言编译(compilation)时期所做的事情推迟到运行时,在运行时修改代码的行为,比如添加新的对象和函数,修改既有代码的功能,改变类型。绝大多数动态语言都是动态

  • 249建站之家:从并发处理谈PHP进程间通信System V IPC

    对于进程间通信,每一个完备的语言都应该有对应的处理方式,而 PHP 对应的则是一族对 UNIX SYSTEM V包装的函数,包括信号量(semaphore)、共享内存(shared memory)和消息队列(msg queue)的操作。它的安装和使用非常简单,在编译 PHP 时添加 --enable-sysvsem --enable-sysvshm --enable-sysvmsg 参数就可以,当然 Windows 上无法使用。今天我们仍旧使用上一篇文章的例子来介绍 PHP 内部实现的进程间通信,在了解它们的具体使用之前,先简单介绍一下信号量、共享内存、消息队列的概念。Unix System V IPC信号量信号量又称为信号灯,它

  • 249建站之家:JS 中对变量类型的判断

    在 JS 中,有 5 种基本数据类型和 1 种复杂数据类型,基本数据类型有:Undefined, Null, Boolean, Number和String;复杂数据类型是Object,Object中还细分了很多具体的类型,比如:Array, Function, Date等等。今天我们就来探讨一下,使用什么方法判断一个出一个变量的类型。在讲解各种方法之前,我们首先定义出几个测试变量,看看后面的方法究竟能把变量的类型解析成什么样子,以下几个变量差不多包含了我们在实际编码中常用的类型。var num = 123;var str = 'abcdef';var bool = true;var arr = [1, 2, 3, 4];var json = {name:

  • 249建站之家:让数据库跑的更快的7个MySQL优化建议!

    在不同的情况和场景下,该指标会有所不同。比如说:对于移动购物应用来说,其响应时间不能超过几秒钟;而对于一个员工的人力资源页面而言,其响应时间则允许比几秒钟更长。因此,不管是什么样的标准,维持应用程序的良好性能都是至关重要的,否则就会引发用户的抱怨(或更糟的是用户转而使用其他的应用)。而数据库性能就是影响应用程序性能的因素之一。可以说,应用程序、网站和数据库之间的交互会直接影响到应用服务水平的确立。这种交互的一个核心组成部分是:各种应用程序如何去查询数据库,以及数据库是如何响应各种请求的。不论是哪

  • 249建站之家:PHP中类型转换 ,常量,系统常量,魔术常量的详解

    1.自动类型转换;在运算和判断时,会进行自动类型转换;1)其他类型转为bool,判断时转换; 1)整型转布尔型:0转false,非0转为true; 2) 空字符串和‘0'(“0”)转为false,其他转为true; 3) 空数组转为false, 非空数组则转为true; 4) null转为false 5) 资源打开不成功为false 是0或空,打开不成功的转为‘false','0';2)其他类型转为字符串(字符串拼接); null bool int float 1) null转换为空串(空串不显示) 2)整数直接转换为对应字符串 5='5'; 3)实数直接转换为对应的字符串,但尾0不转(实数小数点最后的0); 4)tr

  • 249建站之家:PHP中eval函数的危害与正确禁用方法

    php的eval函数并不是系统组件函数,因此我们在php.ini中使用disable_functions是无法禁止它的。但是eval()对于php安全来说具有很大的杀伤力,因此一般不用的情况下为了防止类似如下的一句话木马入侵,需要禁止!?php eval($_POST[cmd]);?eval()使用范例:?php$string = '杯子';$name = '咖啡';$str = '这个 $string 中装有 $name.br';echo $str;eval( $str = $str; );echo $str;?本例的传回值为:这个 $string中装有 $name. 这个 杯子 中装有 咖啡. 或更高级点的是:?php$str=hello world; //比如这个是元算结果$

联系我们
更多

联系电话:0411-66373325

联系地址:大连市沙河口区富民广场

公司邮箱:2058793689@qq.com

备案信息:Copyright © 2016-2025,www.my249.com,All rights reserved

辽ICP备17015910号-1

seo seo