【置頂】技術天天一點點--2017.09-2018.10月

本文地址:http://www.cnblogs.com/aiweixiao/p/7451352.htmlphp

本文提綱:css

  1. 概述
  2. 天天進展

 

 

1.【遺留問題】

  1.1)【問題】html

問題列表

     

     1.2)【todo】前端

  • 【shell登陸】不用輸入密碼的方法。
    • php變量的引用,unset引用,原值還在。
    • php的對象函數修改
    • php遍歷目錄下的全部文件和文件夾
    • 兩個文件都是1G的,複製一個文件的內容到另外一個文件末尾(DONE):http://www.cnblogs.com/aiweixiao/p/7535351.html ,使用php生成器 yield也行
    • 多進程寫入到一個文件
    • Shell 腳本寫出來網站訪問的Top 10,PHP實現呢?
    • MySQL的聯合索引中具體用到那個索引,有大小比較呢?
    • MySQL的事務隔離級別
    • innodb 爲何比myisam的併發性好
    • gearman的消息隊列
     

 

   

 

2.【天天進展】

 

序號 日期 關鍵詞 狀態 內容 備註
18 2018.10.28 js修改打開本頁面的上一個頁面(父頁面)中的元素  
//修改母頁面中的圖片爲審覈完成
var parentDoc = window.opener.document;
parentDoc.getElementById('img').src="/img/icon_audited.png";

//調用可變變量函數名

for (var i=1; i<= 2;i++)
{
  var checkStr = "func"+i;
  eval(checkStr)();

}mysql

 

 
17 2018.03.12週一 linux下安裝mysql  
  •  centos 7默認是 mariDB,修改其爲mysql的方法:http://blog.csdn.net/dogfish/article/details/53167564
  • 修改默認mysql的密碼的方法: 
    UPDATE user SET Password = PASSWORD(‘111') WHERE user = 'root';
    或者 : /usr/bin/mysqladmin -u root password "111"
 
16 2018.03.10 週六 php  
  • php腳本執行的時候,這時候修改php腳本內容,執行的結果沒有發生變化, 是由於php的字節碼在內存中了,這時候,即便將執行的這個腳本刪除了,仍是會繼續正確輸出內容的。
 
15 2018.03.09週五 使用騰訊雲  
  • lnmp安裝:

yum install phplinux

yum install mysqlnginx

yunm install nginxgit

 
14 2018.03.06 php  
  • php的對象也是能夠 foreach循環的
 
13 2018.02.26 js  

1) 防止重複提交 -- js全局變量實現web

window.__canSubmmit__ = true;

function submit()
{
  if(window.__canSubmmit__ == false)
  {
    alert('不能重複提交');
    return false;  
  }    
  
  //業務邏輯
  setTimeout(function(){
    alert('提交完成');
    window.__canSubmmit__ = true;    
  },10000);//延時10秒
}

 我以前作的防止提交的方法是 將一個html的元素的值設置爲不可提交的邏輯,處理完後再設置爲能夠提交,沒有這裏經過設置一個全局變量的布爾值來的簡潔redis

 

 
12 2018.02.25週日 學習書籍《Modren PHP》 已完成

1)php生成器 yield,解決迭代和內存問題

2)閉包 = 匿名函數(對PHP而言),  $test = function(){echo 1;}; $test();

3) __invoke() 把對象當成函數調用時,該魔術方法被調用,匿名函數實際上是一個Closure類,因此調用觸發該魔術方法

4)array_map('addOne', $testArr);  

5) preg_replace_call()

 
11 2018.02.03週六 AI paddlepaddle 進行中
  • 文檔地址:http://ai.baidu.com/paddlepaddle

  是Python的一個庫,深度學習,

 
10 2018.01.06週六 composer 已完成

        官方文檔: http://docs.phpcomposer.com/00-intro.html

composer的安裝和使用:

01)curl -sS https://getcomposer.org/installer | php
下載後是一個 composer.phar 二進制包
 
02) 建立 composer.json文件(內容如左)
改爲國內的鏡像包,不然會很慢,參考:  https://pkg.phpcomposer.com/
 
"repositories": {
        "packagist": {
            "type": "composer",
            "url": " https://packagist.phpcomposer.com"
        }
    }
 
 
03)composer.phar install 

{
"name":"IFrame PHP",
"description":"PHP Framework",
"type":"Framework",
"keywords":[
"PHP","PHP Framework"
],
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
},
"require":{
"php":">= 5.3.0",
"symfony/var-dumper":"*"
}

}

 
 9  2017.11.14 週二  sphinx 未進行 

PHP讀取sphinx實例

 
8

2017.10.13週五

 UML 未進行

數據庫設計不足: 1)未考慮到企業的惟一性,因此要企業和帳戶分離  2)一對多的數據庫設計,查詢效率問題

怎麼解決:1)對數據庫設計的考慮要周全,建議看寫UML設計的書籍,錘鍊下

 

 
 
7

2017.10.11週三

 

開源技術  

1)【前端web上傳組件】:

前端使用的上傳組件百度的webUploader

 
2)【百度雲的php文檔】:
相關的百度雲的SDK文檔以下: https://cloud.baidu.com/doc/BOS/PHP-SDK.html
 
6  

2017.10.10週二

 

php變量引用 已完成

1)php的變量引用,unset後的結果

$a = 3;
$b = &$a;
unset($a);
echo $b;//輸出結果是 3

緣由是:

  • php的變量,$a $b這兩個變量名同時指向了一塊內存,unset($a)只是切斷了$a這個變量名與這塊內存的關聯,可是由於還有$b這個變量名指向這塊內存,因此內存仍是不會釋放,輸出結果是3. 
  • 若是 unset($a) 變成是 $a=1; 則echo $b;結果是也是 1
  • 【對象默認是引用傳遞】

2)參考文檔: http://www.cnblogs.com/nixi8/p/4925094.html

 

 
5

2017.09.30週六

 

item2 PS1設置 已完成

1)顏色配置: http://www.jianshu.com/p/33deff6b8a63

2)PS1命令提示符設置。:http://blog.sina.com.cn/s/blog_6268defa0100wijx.html

export PS1='[\[\e[31m\]\u@\[\e[36m\]\h \W \[\e[32m\]\t] \[\e[33m\]\$\[\e[m\]'

3)item2:

  • 回放功能:option+command+b
  • 光標去哪了?command+/
  • cmd+shift+3 截屏
  • ctrl + 單擊 — 至關於右鍵點擊,呼出菜單—萬能的右鍵
  • ctrl + p: 上一條命令,至關於方向鍵上
  • ctrl + f/b: 前進後退,至關於左右方向鍵,可是顯然比移開手按方向鍵更快
  • ⌘ + opt + b: 快照回放。頗有意思的功能,你能夠對你的操做根據時間軸進行回放。能夠拖動下方的時間軸,也能夠按左右方向鍵。如圖:快照回放
 
memcache 的telnet命令  

1)memcache telnet登陸: http://www.cnblogs.com/zhhtao/p/4475746.html

telnet 127.0.0.1 23934

2)memcache php

1) telnet
set name 16 10 5 #設置name 爲 5個字符,過時時間爲10秒 12345 STORED #成功 get name #讀取name的值 VALUE name 16 5 12345 END

2)php memcache
$memcache = new memcached();
$memcache->addServer('127.0.0.1', 23934);
$memcache->set('name', '周杰倫');
$memcache->get('name');

 

       

 2017.09.20

週三

 mysql索引受字段類型影響  已完成
  • select userid from user where usermobile='13821870706' - 走索引
  • select userid from user where usermobile=13821870706 - 不走索引
  •  -- 不走索引很是慢,由於 usermobile的字段類型是 archar,因此要是以字符串的形式進行查詢,不能以整型的形式去查詢
 
 
3 2017.09.13週三 php-fpm 進行中

1)php.ini中的內存設置是全部的php公用一個內存,

http://www.cnblogs.com/52fhy/p/5051722.html

1)【問題01】:什麼是內存泄露?php-fpm的進程怎麼查看佔用的內存大小?

2)【問題 02】:查看linux的內存的方法:

     答:三個命令都行: top   free  cat /proc/meminfo

3)【問題 03】:php-fpm的配置什麼做用?配置的參數含義?

   答:php-fpm是管理php進程的一個工具,全稱是「FastCGI 進程管理器「。配置的參數含義在 http://www.cnblogs.com/52fhy/p/5051722.html

動態的進程參數,靜態的進程參數。官方的說明文檔:http://php.net/manual/zh/install.fpm.php

 

2 2017.09.04 週一 redis的使用 已完成

1)http://www.cnblogs.com/aipiaoborensheng/p/5666005.html

$this->redis = new Redis();
$this->redis->connect('127.0.0.1', 6379);
$this->redis->set('test', 1 , $expireTime=3600);
$this->redis->incr('test');
$this->redis->decr('test');
$this->redis->get('test');

 

1)mysql的索引,使用 有索引字段的 ,where userid> ,where userid<. where user = 都能用到索引,可是 where userid != 這種區間外的用不到索引 

2)telnet 登陸 redis

telnet 127.0.0.1 6397

http://blog.csdn.net/bravezhe/article/details/8727907

set yourname 666

get yourname

1 2017.09.02 週六 反向代理百度 已完成 1)反向代理百度
#反向代理百度 start
location ~ /baidu{
     proxy_pass http://www.baidu.com;
}

 

 
git的安裝使用 已完成

git init

git clone

git config --global user.email "you@example.com」
git config --global user.name "Your Name」
git commit -m ‘提交註釋’ yourfile.php
 
git pull
git push
git push -u origin master

1)git clone的報錯解決:http://blog.csdn.net/z_dianjun/article/details/50819908

2)git push 須要安裝 ssh key (有時候如如的用戶名不帶後面郵箱的@後綴)

3)git diff 中文亂碼的解決(todo), 由於默認git的編碼都是utf8的

http://blog.sina.com.cn/s/blog_4cd5d2bb01017w76.htm

表格css樣式 已完成

設置表格的css樣式,設置上一級td標籤的style,而不是span

 

 

  2.1)【2017.08.30】

    --部署,變動與發佈維護

    --JDOS系統,對代碼鏡像在開發,測試,預發佈,線上環境之間流轉

    --交付:向開發交付充足的資源,向業務方交付穩定的系統(響尾蛇系統),向運維交互可維護的系統(sysgraph系統)

    --穩定性建設,內部技術競賽

    --故障階段:從技術思路出發,咱們把故障處理分爲預防、發現、定位、止損、恢復幾個大的階段

    --監控建設:「基於Falcon的滴滴內部監控系統」,數據的採集,聚合,實時計算,存儲等,異常檢測智能化,統一報警收斂化(對報警類及操做類事件進行統一收斂,造成事件庫。初步以 timeline 的方式)

相關文章
相關標籤/搜索