1. sysstat service

1.1. /etc/cron.d/sysstat

Linux 下的性能分析,少不了要使用 sysstat 工具包中的命令。同时 sysstat 服务会自动每个10分钟收集一次系统状态信息,并将它们存储到 /var/log/sa目录下。每天一个文件,文件名分别是sa01, sa02,... sa30..

[root@localhost sa]# pwd
/var/log/sa
[root@localhost sa]# ls
sa01 sa03 sa05 sa06 sa07 sa08 sa09 sa10 sa11 sa12 sa13 sa14 sa15 sa25 sa26 sa27 sa28 sa29 sa30 sar25

自动收集系统信息,是通过 /etc/cron.d/sysstat 来实现的:

[root@localhost sa]# cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/ * * * * root /usr/lib/sa/sa1
# 0 * * * * root /usr/lib/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
* * * root /usr/lib/sa/sa2 -A

上面标示每个10分钟,运行一次 /usr/lib/sa/sa1 1 1, 该命令 man sa1:

sa1 - Collect and store binary data in the system activity daily data file.

SYNOPSIS:/usr/lib/sa/sa1 [ --boot | interval count ]

sa1 收集到的是 binary data. 所以 sa2 -A 负责将当天的二进制文件转换成文本文件。

sa2 - Write a daily report in the /var/log/sa directory

其中的收集信息的频率(10分钟一次)我们可以根据需要进行修改。

1.2. /etc/sysconfig/sysstat

/var/log/sa/目录下的文件保存时间等相关配置存在于文件 /etc/sysconfig/sysstat中:

[root@localhost ~]# cat /etc/sysconfig/sysstat
# sysstat-9.0.4 configuration file. # How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY= # Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER= # Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK" # Compression program to use.
ZIP="bzip2"

其中的 HISTORY=28 表示最多保存28天的数据。保存时间,我们可以根据需要进行修改。

1.3. 确保 sysstat 服务启动:

[root@localhost ~]# chkconfig --level 35 sysstat on
[root@localhost ~]# chkconfig |grep sysstat
sysstat :off :on :on :on :on :on :off

上面是 sysstat 服务运行的知识。下面是 sysstat 工具包中的命令行如何使用收集到的信息,来了解系统的运行情况。

2. sysstat 工具包中的命令

sysstat工具包中有很多的分析命令,常用的有:sar, iostat, mpstat(multi processor stat), pidstat, vmstat等等。

其中的sar命令尤其强大,它一个命令就能够收集系统CPU, 内存,磁盘,网络,进程切换,swap, 甚至文件inode,等个方面的信息。sar 的应用比较多,而且也比较复杂,数据更为精确。

2.1 sar 命令

1)sar -u 查看CPU信息:

sar -u, sar -u ALL, sar -u 1 5, sar -u ALL 1 5

[root@localhost ~]# sar -u 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM CPU %user %nice %system %iowait %steal %idle
:: AM all 0.99 0.00 2.97 0.00 0.00 96.04
:: AM all 0.00 0.00 3.03 0.00 0.00 96.97
Average: all 0.50 0.00 3.00 0.00 0.00 96.50

2)sar -r, sar -R 查看内存信息:

sar -r, sar -R, sar -r 1 5, sar -R 1 5

[root@localhost ~]# sar -r  1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
:: AM 20.00 3.96
:: AM 20.00 3.96
Average: 20.00 3.96
[root@localhost ~]# sar -R 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM frmpg/s bufpg/s campg/s
:: AM -11.11 0.00 0.00
:: AM 0.00 0.00 0.00
Average: -5.56 0.00 0.00

3)sar -S, sar -W 查看 swap:

sar -S, sar -S 1 5, sar -W, sar -W 1 5. sar -S 查看的是swap空间的使用情况,sar -W 是每秒发生的swap/page情况

[root@localhost ~]# sar -S
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM kbswpfree kbswpused %swpused kbswpcad %swpcad
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -S 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM kbswpfree kbswpused %swpused kbswpcad %swpcad
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00

4)sar -b, sar -B 查看磁盘IO:

sar -b, sar -b 1 5, sar -B, sar -B 1 5. sar -b 查看磁盘tps(iops);sar -B 主要查看每秒磁盘 page/ fault

[root@localhost ~]# sar -b
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM tps rtps wtps bread/s bwrtn/s
:: AM 0.01 0.00 0.01 0.00 0.11
:: AM 0.06 0.03 0.03 1.41 0.43
:: AM 0.01 0.00 0.01 0.00 0.11
:: AM 0.01 0.00 0.01 0.00 0.17
:: AM 0.16 0.10 0.06 4.84 0.89
:: AM 18.11 17.81 0.31 334.52 26.32
:: AM 0.11 0.09 0.02 5.12 0.34
:: AM 0.02 0.00 0.02 0.00 0.17
Average: 2.31 2.25 0.06 43.13 3.56
[root@localhost ~]# sar -b 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM tps rtps wtps bread/s bwrtn/s
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -B
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
:: AM 0.00 0.05 3.29 0.00 0.86 0.00 0.00 0.00 0.00
:: AM 0.71 0.22 12.02 0.00 3.16 0.00 0.00 0.00 0.00
:: AM 0.00 0.05 3.43 0.00 0.85 0.00 0.00 0.00 0.00
:: AM 0.00 0.09 3.28 0.00 0.83 0.00 0.00 0.00 0.00
:: AM 2.42 0.44 59.48 0.02 14.86 0.00 0.00 0.00 0.00
:: AM 167.26 13.16 1580.24 0.09 336.45 0.00 0.00 0.00 0.00
:: AM 2.56 0.17 15.00 0.02 3.95 0.00 0.00 0.00 0.00
:: AM 0.00 0.09 25.18 0.00 9.43 0.00 0.00 0.00 0.00
Average: 21.57 1.78 212.26 0.02 46.20 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -B 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
:: AM 0.00 0.00 45.45 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 38.38 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.30 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.30 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.00 0.00 59.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 34.88 0.00 59.48 0.00 0.00 0.00 0.00

5)sar -d 查看磁盘IO活动:

[root@localhost ~]# sar -d
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.11 12.80 0.00 2.00 1.60 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.06 1.41 0.43 29.62 0.00 5.86 5.30 0.03
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.11 12.80 0.00 2.80 2.60 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.17 14.86 0.00 3.29 2.14 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.16 4.84 0.89 35.13 0.00 7.26 6.59 0.11
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 18.11 334.52 26.32 19.92 0.05 3.15 2.98 5.40
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.11 5.12 0.34 50.62 0.00 20.66 13.55 0.15
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.02 0.00 0.17 11.56 0.00 1.67 1.56 0.00
Average: dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8- 2.31 43.13 3.56 20.25 0.01 3.29 3.08 0.71
[root@localhost ~]# sar -d 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
Average: dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

6)sar -n { keyword [,...] | ALL } 查看网络:

Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP,  ETCP,  UDP,  SOCK6,  IP6,  EIP6, ICMP6, EICMP6 and UDP6.

你想查看网络哪个方面的信息,就将 keyword 换成上面的那个选项。

sar -n DEV 查看网络设备上的数据包收发情况,sar -n EDEV 查看网络设备上发生的数据包收发错误的情况,sar -n DEV 1 5, sar -n EDEV 1 5.

[root@localhost ~]# sar -n DEV 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 2.02 3.03 0.12 0.70 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 1.01 1.52 0.06 0.35 0.00 0.00 0.00
Average: eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -n EDEV 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

sar -n TCP, sar -n TCP 1 5 查看TCP;sar -n ETCP 查看tcp错误; sar -n SOCK, sar -n SOCK 1 5 查看socket;

7)sar -q 查看系统load负载:

[root@localhost ~]# sar -q
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM runq-sz plist-sz ldavg- ldavg- ldavg-
:: AM 0.00 0.02 0.09
:: AM 0.00 0.00 0.03
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.16 0.14
:: AM 0.00 0.02 0.06
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
Average: 0.00 0.02 0.04
[root@localhost ~]# sar -q 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM runq-sz plist-sz ldavg- ldavg- ldavg-
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
Average: 0.00 0.00 0.00

runq-sz 表示在CPU上排队等待执行的任务;plist-sz系统所有任务。

8)sar -w 每秒进程创建 和 进程切换:

[root@localhost ~]# sar -w
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM proc/s cswch/s
:: AM 0.01 25.14
:: AM 0.04 25.58
:: AM 0.01 25.01
:: AM 0.01 25.40
:: AM 0.19 27.64
:: AM 4.02 120.10
:: AM 0.04 41.77
:: AM 0.09 38.55
:: AM 0.23 50.63
Average: 0.51 42.18
[root@localhost ~]# sar -w 1 4
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM proc/s cswch/s
:: AM 0.00 80.39
:: AM 0.00 90.82
:: AM 0.00 45.45
:: AM 0.00 60.00
Average: 0.00 69.17

9)sar -W 每秒swap/page:

[root@localhost ~]# sar -W
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W 1 4
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00

10)sar -v 查看文件inode使用,缓存情况:

[root@localhost ~]# sar -v
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM dentunusd file-nr inode-nr pty-nr
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
Average:
[root@localhost ~]# sar -v 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM dentunusd file-nr inode-nr pty-nr
:: AM
:: AM
:: AM
Average:

2.2 iostat 命令

注意查看IO和CPU负载情况

参见:http://www.cnblogs.com/digdeep/p/4863502.html 和 man 手册

2.3 mpstat 命令

注意查看多核CPU情况

参见:http://www.cnblogs.com/digdeep/p/4847484.html 和 man 手册

2.4 pidstat命令

注意查看进程情况

参见:http://www.cnblogs.com/digdeep/p/4847484.html 和 man 手册

Linux 性能优化工具包 sysstat 以及 sysstat 服务的更多相关文章

  1. Linux性能优化-平均负载

    Linux性能优化-平均负载 目录 Linux性能优化-平均负载 平均负载的含义 平均负载为多少时合理 平均负载与 CPU 使用率 平均负载案例分析 场景一:CPU 密集型进程 场景二:I/O 密集型 ...

  2. Linux 性能优化之 IO 子系统 系列 图

    http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...

  3. 如何学习Linux性能优化?

    如何学习Linux性能优化? 你是否也曾跟我一样,看了很多书.学了很多 Linux 性能工具,但在面对 Linux 性能问题时,还是束手无策?实际上,性能分析和优化始终是大多数软件工程师的一个痛点.但 ...

  4. Linux 性能优化解析

    前情概述 进程调度 老板 cpu 任劳任怨的打工仔 线程 工作在做什么 可运行队列 拥有的工作清单 上下文切换 和老板沟通以便得到老板的想法并及时调整自己的工作 中断 部分工作做完以后还需要及时向老板 ...

  5. 深挖计算机基础:Linux性能优化学习笔记

    参考极客时间专栏<Linux性能优化实战>学习笔记 一.CPU性能:13讲 Linux性能优化实战学习笔记:第二讲 Linux性能优化实战学习笔记:第三讲 Linux性能优化实战学习笔记: ...

  6. Linux 性能优化排查工具

    下图1为 Linux 性能优化排查工具的总结 图1 诊断 CPU 工具 查看 CPU 核数 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU ...

  7. Linux性能优化从入门到实战:01 Linux性能优化学习路线

      我通过阅读各种相关书籍,从操作系统原理.到 Linux内核,再到硬件驱动程序等等.   把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序.库函数.系统调用.再到内核和硬件等不同的层级贯 ...

  8. 《Linux 性能优化实战—倪朋飞 》学习笔记 CPU 篇

    平均负载 指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,即平均活跃进程数 可运行状态:正在使用CPU或者正在等待CPU 的进程,也就是我们常用 ps 命令看到的,处于 R 状态 (Run ...

  9. linux性能优化cpu-02平均负载

    每次我们系统变慢时,我们通常做的第一件事就是top命令或者uptime命令,看一下系统的负载情况,比如下面: 我在命令行中输入uptime 22:15:51    表示当前系统时间 up 13 min ...

随机推荐

  1. 2014 ICPC---Relief grain(树链剖分)

    原题链接 Problem Description The soil is cracking up because of the drought and the rabbit kingdom is fa ...

  2. Spring Security

    ntercept-url中access配置 IS_AUTHENTICATED_ANONYMOUSLY 允许匿名用户进入 IS_AUTHENTICATED_FULLY 允许登录用户进入 IS_AUTHE ...

  3. ssh默认端口更改后,如何正常使用git?

    由于安全或者其它原因,我们可能会修改默认的SSH服务端口号,默认情况下,已有的git项目在pull或者push的时候会报错. 现在假设原来的项目的remote设置为git@domain.com:Pro ...

  4. 从基础学起----xuld版高手成长手记[1]

    别人的代码总是看不懂? 想实现一个功能总是无从下手? 学会一个,但稍微变个花样就不知道了? 无论你擅长什么编程语言,如果你觉得自己基础薄弱,想从头开始学起,那本文将适合你. 这篇文章的含金量非常高,如 ...

  5. 局域网ping Linux主机名

    1.Windows ping Linux主机名 #ubuntu 下 sudo apt-get install winbind #centos 下 yum install samba service n ...

  6. 自己总结的web前端知识体系大全【欢迎补充】

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  7. Papa Parse – 超强大的多线程 CSV 文本解析库

    Papa Parse 是一个与众不同的,在网页上运行的第一个多线程的 CSV 解析器.它可以解析千兆字节大小文件而不会导致浏览器崩溃.它能够正确地处理格式不正确或边缘的情况下的 CSV 文本.它可以分 ...

  8. [deviceone开发]-百度地图do_BaiduMap的示例

    一.简介 这个示例展示了百度地图的基本使用,并增加了一个自定义弹出的标示.这个标示是一个自定义的label,里面是地点的文字描述.因为这个组件需要根据应用app的包名去申请不同的key,所以提供一个可 ...

  9. JS与一般处理程序之间传值乱码

    好久没用到,突然遇到此问题还用了点时间. 在JS里面通过URL向Handler传中文值的时候,在Handler里面取值出来后会发现是乱码的~~.这就需要个编码解码过程.(先记录自己遇到的一个方面的解决 ...

  10. SharePoint 2013 直接给AD 组赋权限后,AD组里的用户还是登陆不了SharePoint,提示没有权限

    直接给一个all person的AD组赋了个read权限,然后将一个名为“all beijing”的组加到all person组里,但是all beijing组里的人却不能登录sharepoint,提 ...