分類: 生活雜感
透過前端程式開啟檔案的方式
一、 tag a
<a href=”” download=””>download</a>
or
const taga = document.createElement(“a)
taga.href= “”
taga.download = “”
taga.click()
這邊的download屬性是html5加上的,如果沒有指定的話就會依照content-disposition確定,再沒有的話就依url 最後request的部份
2 window.open
window.open(”,’_blank’)
or
window.open(”,’_blank’,’download=’)
3 location.href/location.assign/location.replace/location.reload
與window.open一樣
4 XMLHttpRequest
就是ajax,與axios、fetch相同
const xhr= new XMLHttpRequest()
xhr.open(‘GET’,”)
xhr.send()
xhr.onload = function(){
const blob = new Blob([xhr.reponse],(type:”})
const a = document.createElement(‘a’)
a.href= URL.createObjectURL(blob)
…..
}
MySQL監控常用語法
1 mysql連線數
一、取得mysql最大連線數
show status like ‘Max_used_connections’
二、取得mysql目前開啟的連線數
show status like ‘Threads_connected’
2 mysql 暫存
show status like ‘Innodb_buffer_pool_reads’
show status like ‘Innodb_buffer_pool_read_requests’
show status like ‘Innodb_buffer_pool_pages_total’
show status like ‘Innodb_buffer_pool_pages_free’
(1-Innodb_buffer_pool_reads/Innodb_buffer_pool_read_requests)*100%
((Innodb_buffer_pool_pages_total-Innodb_buffer_pool_pages_free)/Innodb_buffer_pool_pages_total)*100%
3 鎖
show status like ‘Innodb_row_lock_waits’
show status like ‘Innodb_row_lock_time_avg’
show open TABLES where in_use>0;
4 sql語法
一、慢查詢mysql 語法開關是否打開
show variables like ‘slow_query_log’;
二、慢查詢mysql語法打開
set global slow_query_log=1
三、設定慢sql的時間(秒)
set long_query_time=1
三、慢sql路徑
show variables like ‘slow_query_log_file’;
四、透過慢sql分析工具格式化記錄
mysqldumpslow -s at -t 10 /export/data/mysql/log/slow.log
四.1、取出使用最多的10條慢sql
./mysqldumpslow -s c -t 10 /export/data/mysql/log/slow.log
四.2、取出查詢時間最慢的3條sql
./mysqldumpslow -s t -t 3 /export/data/mysql/log/slow.log
幾個會導致sql變慢的原因
1 子查詢
SELECT FROM t1 WHERE id (SELECT id FROM t2 WHERE name=’hechunyang’);
改用 join ,但update/delete沒作用
2 避免用函數
SELECT FROM t WHERE YEAR(d) >= 2016;
改用 SELECT FROM t WHERE d >= ‘2016-01-01’;
3 用in 取代 or
SELECT FROM t WHERE LOC_ID = 10 OR LOC_ID = 20 OR LOC_ID = 30;
改用 SELECT FROM t WHERE LOC_IN IN (10,20,30);
4 雙%號無法用到索引
SELECT FROM t WHERE name LIKE ‘%de%’;
改為 SELECT FROM t WHERE name LIKE ‘de%’;
5 分組統計可以禁止排序
SELECT goods_id,count() FROM t GROUP BY goods_id;
改為 SELECT goods_id,count () FROM t GROUP BY goods_id ORDER BY NULL;
6不要用無意義的order by
SELECT count(1) FROM user u LEFT JOIN user_info i ON u.id = i.user_id WHERE 1 = 1 ORDER BY u.create_time DESC;
改為
SELECT count (1) FROM user u LEFT JOIN user_info i ON u.id = i.user_id;
LINE TODAY – 微服務架構支撐千萬,活躍用戶的影音內容平臺
LINE TODAY – 微服務架構支撐千萬,活躍用戶的影音內容平臺
.Net 7 開發增進效能的小撇步
預計在2022年11月發布的.net7目前進入RC2的版本。來談談.net7 做了那些效能上的改進~
LINQ部份
1針對max/min最佳化
2針對Average/sum
3新增order/orderDescending 取代orderby/orderbydescending
4 System.IO的改善 WriteAllText改ReadAllText
5 針對Jsonserializer NoCachedOptions提昇
6Guid的 GuidEquals提昇
7ParseBigInt提昇
8ParseBool
9 Stopwatch中的getprocessbyname與getcurrentprocessname
10 在stopwatch加上getelapsedtime取得時間戳
教學影片錄製相關-麥克風
九成新手都用錯! 小蜜蜂的領夾型麥克風怎麼夾? 怎麼黏? 別麥克風教學
無線領夾式麥克風怎麼接才能讓線上和實體的學生都聽得到完美的聲音
Lavalier GO / Skier / Sennheiser 領夾式麥克風 mini mic 效果實測
ZOOM LiveTrak L-8 L8 廣播 混音機 混音器高階技巧應用
Countryman Headset Mic Placement
How to choose the right headset mic for any situation
Learn how to mount and adjust 4066/4088 Headset Microphones properly
VS2002 Preview4
Laravel 8.58 rele
https://laravel-news.com/laravel-8-58-0
增加了updateOrFail()、exclude的排除驗證方式、http retry、whereRelation等這功
伴我21個年頭的Delphi
2000年從商業經營科系轉至勤益的資訊管理科二專部後,就開始接觸Delphi5這門程式語言,記得當初使用QB/VB都覺得不到位,遇到Delphi後覺得這開發工具真的很強大,於是努力學習精進。
這門語言,也讓我得到了在國泰電腦的第一份軟體業工讀生工作後,甚至讓我進入海軍陸戰隊服役時,因為對資料庫程式的特別專長,也參與了兵棋、陸戰隊進銷存等專案開發。退伍後,也陸續進入公司開發過中醫醫療軟體、檢驗儀器系統連線、會計、人事薪資、票據、餐飲POS等系統,客戶也從中醫診所、檢驗室、檢驗所到流通業、百貨業甚至超市業。
毫無疑問的,Delphi是近25年來我覺得唯一也是擁有絕對地位的Windows資料庫應用程式開發工具王者,從幹掉VB、Powerbuilder的工具來看,近幾年也著重在APP的開發上,但也許因為有不少開源的開發語言(如:Cordova、Xamarin、NativeScript、React Native、Electron、Flutter) 導致優勢不再。連近期公司的走向也是主要以雲端開發為主了!
雖然還不致於正式跟它Say Goodbye~不過使用它的頻率真的減少許多就是
C#/ASP.net 自動建置透過Jenkins
一、安裝Git
二、安裝 T
三、記得有繁體中文的語系包,可以一起安裝上
四、安裝Gogs
五、下載透過二進制即可,切到目錄 gogs web
六、下載Jenkins安裝