導航:首頁 > 程序命令 > 程序員小何網站被打

程序員小何網站被打

發布時間:2023-05-31 14:54:43

『壹』 程序員的悲哀是什麼

「碼農」這個詞,不管是不是從事IT工作的人,都略有耳聞。這個詞的誕生無從考究,不知是程序員的自嘲,還是外行帶有顏色的嘲諷。總之,對於這個詞,我是既無奈又無力反駁。確實,工作中,我們大多數底層程序員每日做的工作相當於流水線的作業。

大部分程序員是悲哀的,不是情商、衣著、自黑之類,悲哀的是沒有決策權。項目做成什麼樣,那是領導和產品經理的事;用什麼技術框架,那是架構師的事;資料庫的設計,業務那是項目經理和產品的事;而作為一個普普通通的底層碼農,我們只需要拿到需求,然後等設計給圖子,流水化的寫出實現代碼。我們只是一個執行者,別人叫你幹啥就幹啥。最後項目做壞了,裁員的是誰?程序員。

這就是一個普普通通的「碼農」。讀書那會,我的老師跟我說,「如果從業十年,你依舊在寫最基礎的代碼,做一個碼農,那麼就不要做程序員了,轉行吧」。現實中,每個公司存在最多的就是這些「碼農」,那種掌握核心技術,產於項目設計,技術架構的畢竟是少數,大多數程序員都處於被動接受,按需求完成代碼的任務。

做程序員越久,越是感到:我們就是新時代的手工藝者。只有少數的人,從手工藝者,變成了發明手工藝製作機器的人,少部分人變成了設計手工藝品的人,少部分人變成了車間主任罷了。

「碼農」這個詞有著深深地悲哀

見過太多剛入行的菜鳥,像極了曾經那個滿懷激情,夢想的自己。當第一次接觸java的面向對象思想時,那種興奮,彷彿能用Java描述整個世界,彷彿自己就是上帝一般,在現實世界,創造出另一個虛擬世界。而現實中,一兩年的流水化作業,沖淡了一切。

對於產品,彷彿是自己的孩子,從無到有,一點一滴,看著一個網站,產品,在自己的手下,滿滿長大,那種滿足感,自豪感,油然而生,但是最後你希望它變得更優秀時,卻發現它不受你控制,彷彿養了好幾年的兒子,被人教唆去做壞事,你不能說任何話,因為撫養費不是你出的。

決定你有沒有決策權的是你的縱向位置,也就是在本行業金字塔的位置,出類拔萃者說話就響。過慣了咸魚生活,但誰又甘心做一個「碼農」,我們希望發出自己的聲音,成為那個有權利選擇的人,這一切需要提高自己的技術,能力作為支持。在國外,程序員被稱為程序設計師,而國內「碼農」,區別可想而知。

『貳』 cc攻擊是什麼怎麼防禦網站被cc

什麼是CC攻擊?CC攻擊的前身名為Fatboy攻擊,是利用不斷對網站發送連接請求致使形成拒絕服務的目的。攻擊者通過代理伺服器或者肉雞向向受害主機不停地發大量數據包,造成對方伺服器資源耗盡,一直到宕機崩潰。

如何防禦CC攻擊?

理論上伺服器配置無限增加就可以防得住CC攻擊,CPU內存帶寬配置越高,抵抗能力越大,但是這只是理論上的,就好比你是一個身強體壯的漢子,跟一群人打架,三四個人也許對你毫無壓力,但是如果幾百個人呢?一人一口水你都掛了。

所以防禦CC攻擊我們需要幫手。

一,高防IP

高防IP是指擁有專業的防火牆的IP轉發節點,可以有效攔截非常攻擊。就好像一群人肉搏,你卻擁有盔甲,對方肯定是打不過你的。

二、高防伺服器

和高防IP類似,高防伺服器是指擁有專業防火牆的伺服器,可以有效攔截CC攻擊。

三、高防CDN

高防CDN是指設置在全國各地的高防節點,通過分散攻擊來達到防禦作用。就像打群架,對方來100人,但是你有15個幫手,而且這些幫手個個都是練武的,一打10不是問題,那麼問題就解決了。

三種防禦方法主機吧比較推薦高防CDN,因為誤殺率低,而且成本也低。比如網路雲加速,專業版代理價也才795元一年,非常合算。相關鏈接

『叄』 java程序員試用期會被開除嗎技術差,天天打醬油 不知道做什麼

試用期被開除的情況肯定是會有的,公司錄用你,你在試用期表現不好,那肯定會開除你的啊,為什麼有試用期,其實就是看你是否能夠融入項目組,能夠體現自己的優勢,有潛力為公司帶來利益,所以我希望你還是積極一點,不知道就多查查資料,虛心向項目組的其他人員請教,早點融入項目組,那樣就差不多OK了,

『肆』 作為程序員自己的小團隊,怎麼找私活

很多程序員上班一般都是一個項目做兩到三周,如果完成自己的那一塊的話,就可能會有相對多的時間,這個時候,很多程序員就會想著多賺一點外塊,這個時候就會利用自己多出來的時間來接點私活,也有一些玩得好同事就會私下問到我這個問題,今天就來個大家分享一下我的一些經驗吧。

第二個通過這個途徑找到我的甲方,叫鵬哥。開發一個網站,總價一萬多,吃了上次的虧後,我自己就不想參與了,就找了一個讀者(小李)做。結果這個項目爛尾了。小李交付的產物我自己都覺得不好意思,bug 非常多。在我看來,既然項目的訂金已經收了,作為開發人員,至少應該交付一個說得過去的產物——負責任吧。

很遺憾,個人品牌招攬來的前兩個私活最後都搞砸了。這里有必要總結一下:作為程序員,既然打定主意要接私活,那麼接到的時候一定要珍惜。如果一開始覺得價錢低,就趁早拒絕,免得因為需求變動等等原因砸了招牌。

當然了,通過這個途徑也做成了四單,每單的價格差不多兩萬。這里就不再詳談了。

『伍』 程序員遇到很難的技術問題是怎樣的感覺

昨天剛領一個線上P0級重大事故,持續時間1小時,影響范圍全站 !准確的時間點是下午17點開始,具體問題定位且聽我下文細細道來。


先說感覺,那感覺真是太刺激了,本來下午五點,昏昏沉沉的,瞬間一個激靈就清醒了(想像一下高中課堂,你在打瞌睡,突然老師走到你面前給你一下子的感覺),原本准備再過一小時吃晚飯了,吃完晚飯再摸魚到21點就可以下班了呀,別問我為啥到21點,問你就不是程序員!


帶著無比緊張且顫抖的心情開始定位問題,先來個錯誤日誌嘗嘗鮮:




整個事情的發酵是這樣的:

1、下午五點開始有少量的慢sql報警,沒有人當回事,因為這種事情總發生,雖然大家都知道在實際開發中如何避免慢sql,但是整個團隊要想完全避免慢sql卻很難;

2、五點十分左右,開始零星有用戶反饋指定功能不可用,SLB開始報警,技術開始介入排查;

3、十五分左右,客服部門電話開始爆炸,用戶密集反饋指定功能不可用,技術部開始重視;

4、二十分左右,所有服務大面積出現介面無法響應,整體服務不可用;

5、我們一開始定位覺得是MySQL的問題,因為前面有mycat的慢SQL報警,後來定位並不是MySQL,因為MySQL的內存、連接數、流量這些指標都很平穩;

6、最終在五點三十分的時候我們定位到是ES出問題了,因為所有的Java服務不可用最終都指向上面的錯誤日誌,bbo提供的服務線程池滿了,再有請求進來直接拒絕了,查看這個服務的代碼,最終查詢的是ES,此時的ES進程已經處於假死狀態。


那接下來大家說怎麼辦?如何快速的恢復線上服務?



重啟!


是的,只有重啟大法此時是最快的解決辦法,你不可能說保留ES事故現場,讓我用arthas之類的工具來現場分析jvm內存情況。

然而重啟之後服務依舊是不可用,介面還是無法響應, 大家知道這個時候是什麼原因嗎?為什麼重啟了ES服務還是不行?


後續繼續重啟報錯bbo日誌的相應服務,當這些服務全部重啟完畢後,我們的服務終於恢復訪問了,這個過程持續了十幾分鍾,確切的說,直到17點五十多分,我們的所有服務才恢復了訪問。


接下來就是事故總結、相關責任人、產生問題的原因、接下來的優化方案,全公司郵件通報!


你說這個難不難?本身並不難,難的是事情緊急且重要,這個時候你慌了啊,亂手亂腳的,大家你一言我一語的,如何冷靜提取有效信息然後盡可能快的解決生產的重大故障才是最難的!


最後,當一切都恢復平靜的時候,你會發現:「卧槽,好累啊!」。

虛脫的感覺!

最後祝大家程序員節日快樂,今年可是程序員的本命年哦



2020 = 1024 + 996 = 404 + 404 + 404 + 404

這種感覺能難受,很壓抑。

技術難題,對於程序員來說,是經常有的事,關鍵是如何面對吧。

說下我的事情,雖然也會寫點代碼,但並不是以此為正業,所以對於真正的程序員來說,可能說法會有點偏頗。

遇到難題時,一般都在網上搜索解決方法,一般來說,都有很優秀的程序員分享他的勞動成果,所以一般都能解決問題。但也真正碰到難的問題,一個就是循環的問題,無限極菜單問題,當時都是找了很久,看了很多遍才明白過來,當時自己是幾天都不太開心,也不太想說話,總是在測試著程序。挺煩也挺不開心的。只是最後做出來了,心情就好多了。

這是我的一些經歷,當然,如果全職程序員,可能壓力就更大了。

如何形容這種感覺呢?焦躁,緊張,失落,無助,亞歷山大...

再多詞可能都描述不清楚。本人在工作中經常遇到難題,有些問題一兩個月都搞不定。遇到這種問題,估計只有下面這張圖的表情能描述此時此刻的心態了。

程序員遇到的難題其實分為兩種,一種是沒有辦法定位清除的問題,另外一種是定位清除了,但是沒辦法,或者很難解決的問題。

難定位的問題

所謂難定位的問題,其實就是你根本不知道這個問題是什麼。比如系統突然掛掉了,你從現有的信息根本不能確定問題在哪。這個時候你剩下的可能只有滿腦子的問號了。


如果系統只掛了一次,後面不再出問題,那就很難找出問題的根源了。不過這樣也有好處,那就是問題的影響的程度相對較輕,畢竟不容易出現。所以在軟體開發中通常不是什麼問題都解決的,因為不是所有問題都能搞清楚是什麼問題,談何解決呢!

難解決的問題

難解決的問題是問題搞清楚了,但是基於現有架構很難,或者沒法搞定。遇到這種情況,通常先是很高興,興奮,然後就只剩下無奈了。

當然,從技術層面來說並不是完全解決不掉。只是如果要解決需要涉及架構調整或者其它方面的改動,修改調整的內容太多。這種情況下就要考慮利弊得失了。


如果改動太大,可能會引入很多新的問題,可能得不償失。因此,遇到此類問題可能會採取一些規避方案。

當然,在開發和運營當中遇到各種問題是很正常的,關鍵是遇到不同的問題採用不同的策略。首先保證的是業務的正常運行,然後是考慮是否需要徹底解決。這樣慢慢調整,心理壓力會小一些。

作為一個工作多年的老碼農,在工作也遇到過一些艱難的技術問題,就以切身體會談談對這個問題的看法。

首先需要明確一下,問題是否困難除了取決於問題本身之外,還在於解決問題的人的水平,也許對你很難的問題,在別人看來不過是小菜一碟。明白了這一點,那麼這些技術問題也就成了考察程序員水平的試金石,有些人可能會因此氣餒,甚至放棄;而有些人則通過解決問題學到了很多新的技術,也讓自己進一步成長。

記得多年前看工作中要用到一款開源庫,那時候剛學完C++不久,自以為對面向對象了解甚深,然而學習這個庫時卻是一頭霧水,最後在經過泡論壇,然後又認真的學習了面向對象設計模式,後來不但能使用那個庫,更重要的是對面向對象編程有了更深的認識!

後來還有很多類似的事情,剛開始時感覺無比困難,但是通過自己的努力,或求助他人、或查閱資料,當最終問題解決時,你會發現自己又牛逼了一些,然後再遇到一些新的問題,如此循環……

其實編程也是一個學習的過程,就如同爬山一樣,每一階段都會有一些山頭,只有當你爬上山頭才能欣賞美麗的風景,但是當你爬上一座山頭的時候,就會發現更高山峰!只有當你爬上最高峰,才能「一覽眾山小」,可是到那時,你可能會嚮往地球之外的天地!

很難解決一般就是遇到某些瓶頸了,不同瓶頸的感覺是不一樣的,但無非可以歸結為下面幾類。

成本原因
不讓馬兒吃草,還想讓馬跑。這個是有些不太理解互聯網的一些領導的錯誤觀念,他們會給你安排一個老舊台式機,想要讓你承載幾萬、幾十萬並發的秒殺系統,你當然很難解決。
外界的評論可能是,「這幫程序員是吃干飯的么?這系統也太垃圾了!」
老闆的評論是,「我這台式機也不少錢呢。」
程序員的評論是,「這摳門老闆不會是個傻子吧。哎,再優化優化吧。」

當然,有些情況也是能夠理解的,公司明白需要更好的設備,但是由於成本控制,不得不在某些方面節省。但換句話說,設備成本是占不了一個大頭的,可能有其他方面的成本更加需要收緊。

如果是因為成本原因,我們的心情可能是無奈,又有些不能施展拳腳的束縛感。


歷史 原因
舉個例子,系統用了5年了,迭代了N個版本,在面對新的需求的時候,就會出現需求限制於系統的情況,常常會有程序員說,這個實現不了,那個不符合現在系統規則。其中很大一部分是這些年的積累,欠下的技術債造成的。俗話說,大船難調頭。

這種情況更多的出現在剛創業之後的幾年,由於一開始的快速迭代,追求先把業務流程跑通,先生存再規范,會讓一開始的軟體開發流程並不那麼規范,如果在1-2年內沒有進行重構,那麼積攢的3-5年的技術債就會慢慢把你壓得喘不過氣來。

解決這種情況,一是需要時機,給出足夠的空間和時間讓技術團隊重構,二是需要魄力,你得有成功的把握,不能幹著干著說不行了,咱們還是回到原來吧。

如果是因為 歷史 原因,我們的心情可能是期待和渴望,又有些對現狀的無奈。


能力原因
雖然說專家很厲害,但說白了,大部分企業需要的研發人員,還到不了需要專家的級別。所以,一般而言,沒有什麼技術是攻克不了的。如果真的遇上了,那就說明你的公司已經到達了一個新的層次,從而需要那個層次的人員來解決,可以通過外聘或者顧問的方式,引進新的技術。

如果是因為能力原因,我們的心情雖然有些力不從心,但又為公司在新的台階而高興。

不管怎樣,程序員是一群追求美好的人,不管是外部限制還是內部限制,不能解決的難題對於技術人員來說總是很憋屈的。

不能著急,慢慢分析,找到問題點,沒有解決不了的問題

程序員的技術問題,排除架構師技術選型錯誤以外,都是程序員的功夫不到家所致。

1,面向網路的程序員會第一時間問度娘,各大社區求助大神。

2,面向源碼的程序員會第一時間查看源碼實現,查找api文檔,思考解決方案。

3,不管技術如何發展,架構如何延伸,不變的是基本功,再先進的組件都是由基礎語法書寫出來的 。

練武不練功,到老一場空,共勉!

首先說下這個很難的技術定義,個人認為在你知道之外的知識都是很難的,一旦你深入了解其使用方式,原理,甚至閱讀了他的源碼,你會覺得有的時候會恍然大悟。程序員是一個不斷要學習的崗位,就要面臨很多從未知到已知技術的時候,每當遇到這樣的情況時候,總有種不解決了這個問題,睡不著覺的感覺,心裡不踏實,總是想盡各種辦法去解決這個問題。甚至可以一直追查這個問題。也許這就是一種執拗吧

我老公最近就遇到一個大石頭需要敲碎,我作為一個旁觀者,都挺心疼他。

他還在讀博,最近遇到的問題是他一個項目上的問題,也跟他的畢業設計相關。他剛讀博的時候確定了一個方向,去年開題的時候他覺得這個方向沒有什麼前景,真的是考慮了好久要不要換,如果不換,就是安穩的畢業,換的話接下來的一年多時間他會很艱難,很多新的問題需要一一克服,最後他決定換了,他說他讀博就是為了提高自己,還是想挑戰一下。

年前,系統板設計好了,然後最近做好回來了,開始調試,說這個板子跟個石頭一樣,不工作。本來就是禮拜一到禮拜六待在學校不回來,周日是休息的。現在放假回來都是在啃變壓器的東西,早上起的很早,晚上又很晚。真的挺心疼的,他還安慰我說,他又要進步了。挺擔心他的身體的,我特別希望時間能快點過去,能順利畢業。他卻不希望,總覺得時間過的太快,沒有時間搞研究。

今年的生日願望,希望他科研順利,身體 健康 。

以我的從業經歷,說說遇到很難的技術問題是什麼感覺吧: 興奮、充滿挑戰性 。尤其是在開發中遇到了技術難題,很多情況下真有種可遇不可求的感覺。

我認為能遇到技術難題,至少證明這個工作是有價值的。 這種價值體現了兩個方面,一是你的工作在整個產品開發中占據重要地位,甚至是核心地位。二是你的認知和經驗,仍然有成長的空間。如果你的工作一直沒有遇到難題,輕而易舉地就解決了一切,那麼很可能是你沒有機會深入重要的核心部分,或者你的工作性質可替代性很高,簡單重復性很高。

分解法。 把技術難題拆分,盡量的單元化、模塊化,這樣有利於逐步攻破,逐步解決。主要是降低技術難度,尋找真正的難點所在。如果問題無法拆分,就是那麼一個點,那麼需要逆向思維,可以先把問題擴大,看看涉及面有哪些,然後再縮小范圍,鎖定關鍵之處。

刨根法。 把技術難題抽象化,理論化,從根本的源頭去解決。很多技術問題,從基礎理論的角度去看,其實真的不難,只要你能定位到相關的技術點,困難點,知識點,就很容易進行快速解決。解決的終極辦法就是從理論上徹底解決,做到知行統一。

討論法。 三人行,必有我師。很多情況下,所謂的技術難題,在別人的眼中,也許並不是難題。很多情況下,小組討論,交換意見,方案互補,就可以解決難題。有些情況下,還需要和供應商一起討論,主要是補充信息的錯漏。經常出現的晶元問題,很多情況下供應商都更加有經驗。因為供應商有更多的使用客戶,有很多解決問題的經驗。最主要的是,晶元是他們設計的,他們更加清楚緣由。

沒有絕對的技術難題,有的只是尚未解決的技術難題。

『陸』 老胡是名程序員又去東北遊玩與一位大漢發生爭執,大漢吼了一句你瞅啥,老胡說什麼才不會被打

老胡只要說「不瞅啥」就可以了!東北話「你瞅啥」的意思就是「你幹啥啊?你想咋的」,只是一種詢問語氣,沒有打架的意思。所以,老胡只要正常語氣回復一聲「不瞅啥」就沒事了,也不會被打!

『柒』 如何避免網站被攻擊

如何做好網站安全防禦:

(一)網站數據定期備份:定期備份網站數據可以用來恢復被攻擊的網站,即便網站被攻擊或誤操作刪除一些網站信息,可隨時恢復。為此網站運維,網站備份才是硬道理。

(二)網站程序系統更新:網站程序和伺服器系統定期更新使用的版本、補丁,可消除一些存在的安全漏洞,以防給黑客帶來可趁之機。

(三)定期查殺網站病毒:定期查殺網站病毒可以防止黑客的進一步破話或竊取網站數據,也可以及時刪除入侵的網站後門漏洞文件。

(四)網站文件許可權設置:對網站伺服器文件合理的設定許可權,比如部分執行程序的重要文件應當取消寫入或執行許可權,可避免黑客篡改網站數據。

(五)網站域名開啟https數據安全傳輸協議和CDN速,開啟https和CDN,可以更快的、安全的運行網站,可以隱藏自己的網站真實ip,一定程度上預防DDoS攻擊、CC攻擊、域名劫持等安全隱患。

(六)網站如何防禦DDos攻擊和CC攻擊?可使用高仿伺服器:高防伺服器具有高性能、高帶寬、高防禦的特點,在安全上、運行上自身具備一定維護的基礎後盾,給後期維護帶來了不少的方便,但是造價高昂,這里主機吧推薦用網路雲加速,網路雲加速是網路旗下為網站提供一站式加速、安全防護和搜索引擎優化的產品。網路雲加速正為數十萬用戶的近百萬網站提供CDN、網路安全和SEO服務。每天處理十億級的PV流量及數百億TB的數據流量,並提供市場頂尖水平的穩定性和抗攻擊能力。相關鏈接

(七)定期更新管理密碼:網站密碼可被離職程序員記錄或黑客入侵暴力破解獲取,定期更新網站後台密碼和遠程伺服器登陸密碼可有效預防數據損失。

(八)定期查看網站日誌:網站運行數據的記錄都在網站日誌里記載,開啟並定期查看網站日誌,清晰地了網站運行的軌跡,是網站維護的重要方式之一。

『捌』 澳洲程序員吐槽:收入被吊打,想回上海。網友:國內加班加吐血!

大家都知道,編程起源是在國外,國內互聯網發展也不過20年左右,所以這其中的差距是不言而喻的。我們互聯網落後國外的地方肯定是很多的。但如今的中國開始大力發展互聯網,從馬化騰到馬雲再到李彥宏,如今國內的互聯網移動通訊迅猛發展,移動支付更是全球領先。以前很多業務我們可能會主動去和老外合作,但如今很多業務估計老外會搶著更我們合作了。那麼,外國程序員和中國程序員的技術,區別在哪呢?我們來看看這位在澳大利亞工作了8年的程序員怎麼說了。

「目前在澳大利亞當程序員,墨爾本,但是還沒買房。本科東北一所985,畢業後工作一年就來了澳洲,現在畢業8年了……收入被北上廣工作的本科同學吊打。很想回上海,但是不知道自己技術行不行,澳洲這邊程序員技術有夠差的...技術好的漲幅高,技術一般的就漲幅很低很低。我在的公司福利很好,吃的三餐全免,醫療幾乎全包(包括私立醫院),衣服經常會有品牌店(clombia等)打折卡,每年帶薪假15天,還有油錢補助,因為是運營商,話費也幾乎全免。我覺得除了工資低其他都挺滿足的」這樣的吐槽也是立馬引起了國內程序員的一片群嘲。一起來看看。

「澳洲1055,中午還休息兩小時」

「呆著吧,比國內強,醫療,教育,稅收,房產 這四大問題已經難不倒你了,你還在乎什麼錢不錢的,就是虛榮。別小看你的醫療保險」

「你開心就好吖,何必和同學比較工資收入?收入一千萬又有什麼用,如果是加班加到吐血,冷落家庭和親人,得不償失吧。」

「兄弟,讓下一代接受文明 社會 教育難道不好么?工作最終不是為了生活么。 那裡有 歧視,國內就沒有么?你是沒體會過官府的厲害哈。光盯著收入有啥意思?RMB的信用在國際上是什麼樣難道不知道么?要整體看收益的。還有怎麼樣出去?」

「我是不建議回來,我澳洲同學回國一直感嘆國內物價高,主要是壓力大,無論是工作、家庭、親戚等方面壓力都大,國內環境很復雜,她最後去了南京一高校做研究員,一直在想辦法再出去。年紀大了你就會知道,壓力大關系的問題很多,精力是主要問題。」

「老哥以前我也是外企的,感覺太閑,所以出來了,外面真的很累很苦,還未必比外企性價比高。不過我才26還單身,能吃得消。你可以自己下班學學技術看看書,然後自己接私活啊,不一定非得回國加班,國內百分之九十的公司乾的都是業余開發,其實沒啥技術,還不如自己去github上學習開發呢」

「國內加班太恐怖了,那些炫耀收入的只怕沒告訴你他們每天幾點回家、脊椎腰椎有多痛,似乎是文化認同的問題沒有解決,所以想回來……問題是國內的文化你也不一定會認同,可能依然覺得被邊緣化。閑暇看看人類學 社會 學的書,親測有效。」

各位讀者你們怎麼看的呢,國外好還是國內好呢?

『玖』 網站怎麼了怎麼突然打開不了了

一、域名過期,域名是網站的入口,如果這個入口失效了,那麼網站是肯定打不開的,雖然這種情況比較少見,但還是容易被人忽略,如果你的網站突然打不開了,首先就要排除域名是否過期。
二、域名空間出現問題導致網站打不開,分為以下幾種:
1、域名沒有正常納仔備案,國內伺服器域名是需要備案的
2、域名沒解析;
3、空間沒綁定;
4、伺服器不穩定(主要表現在網站載入時慢時快、經常性顫磨打不開)
三、程序問題導致網站打不開
網站程序出現的問題,最多的還是掛馬了,所以程序員在寫程序的時候要考慮到這一點,也要隨時做好數據的備份。
四、客戶端問題,瀏覽器不兼容,或者異常崩潰都會導致網頁無法打開。更換瀏覽器測試即可。
五、網路原因,如果網路不通,網站也是打不開的。建議採用Tracert(跟蹤路由)的方式,查看訪問途徑的設備是否有異常的延時,採用代理訪問的方式使用其他線茄茄斗路測試速度

『拾』 程序員遇到百度不出來的bug都是怎麼解決的

筆者不同意下面網友的回答。程序員如果解決bug的水平停留在網路,那麼本質上只是一個「面向搜索引擎的代碼搬運工」,是不合格的程序員。

程序員對面bug,正確的「打開方式」是像福爾摩斯和柯南那樣,尋找線索、運用邏輯推理來縮小問題可能的根因范圍,最終精準定位。

常用的方法有:

1. 壞境上下文變換法

2. 工具調試法

3. 版本回溯對比法

4. 代碼審計法

……

沒有編程問題是stack overflow和Google解決不了的,假設你在編程中遇到了問題,你自己解決不了、你周圍的的人都解決不了的時候,我覺得stack overflow、Google是你最好、也是最後的幫手。

作為一個程序員,我覺得Google、stack overflow是你必須要學會使用的兩個工具,這兩個工具本身並沒有使用門檻,只不過因為一些眾所周知的原因,很多人不能使用Google和stack overflow這兩款工具。

Google主要還是方便,而且很多編程問題都需要用到英文搜索,當然現在網路在專業能力上也提升明顯,不過跟Google也還是有比較大的差距,因此我還是強烈建議要學會使用Google,這會幫你在工作、學習上事半功倍。假設Google確實因為某些原因沒辦法很好的使用,我也建議你至少要會使用Bing搜索。

現在可以說stack overflow上沒有你找不到的問題了,從IDE環境安裝問題,到各類編程語言問題。演算法問題,數據結構問題,調試,重構等等,幾乎這里就沒有你找不到的答案,可以說在stack overflow上你可以找到任何解決方案,並且上面的回答者基本上都是非常有經驗,而且都是實際中遇到的問題分享出來的,這個工具一定要會使用。同理,除了stack overflow這個專業的垂直程序員問答社區,你也可以使用Quora這個綜合問答社區,這上面也能找到很多問題的答案。

一些比較優秀的文本編輯器: Emacs/Vim,Visual Studio Code,Sublime Text,Atom,Ultraedit,Hbuilder等。

一些比較非常出色的IDE集成開發環境: visual studio,IntelliJ IDEA,PhpStorm,Haskell for Mac ,eclipse,WebStorm,GoLand,CLion,Android Studio,Xcode,QT等。

macOS平台比較好的第三方包管理工具: Fink,Macports,Homebrew等。

一些比較好的終端工具: Zoc7,iTerm2,Cmder,terminus,hyper等。

一些比較好的筆記軟體、markdown工具、效率工具: Evernote,有道雲筆記,為知筆記,Ulysses,MWeb,FileZilla,Snipaste,Kantu等。

虛擬機軟體、容器軟體: Parallels Desktop,VMWare Fusion,Virtual Box,Docker等。

我是個程序員,職務是linux底層驅動工程師。平時的主要工作是調試驅動,但產品遇到諸如死機、重啟、不開機之類的問題時,也要參與查找原因。一部分問題,確實可以查看相關的log,然後網路這些log的關鍵字來解決;但更多的問題,牽扯的條件太多,並不是簡單的網路就能解決的。

觀察了周圍同事們的做法,我總結出以下幾種解決方法:

網路因為競價排名的原因,搜索出來的結果有很多廣告的成分,所以有時候要翻好幾頁才能看到一條相關的答案,有些甚至要翻幾十頁。

因為網路搜索使用的是SEO技術,即普通用戶可以通過優化網站內容來提升關鍵詞排名。

而這就會導致一個問題:你搜索關鍵詞後展現出來的結果是有人想要讓你看到的,並不是質量最好的。

也就是說,網路搜索結果被人為干預了。所以網路一直被網民所詬病。

但網路搜索不出結果,未必是網路的原因,也有可能是自己輸入的搜索詞不準確造成的。所以對於網路,我們要做到如下幾點:

除此之外,網路搜索還有點小技巧,粥左羅《萬字干貨,徹底講透搜索技巧,10倍提升你的搜索力(免費教程)》這篇文章寫得非常好,我整理幾點,僅供參考:

01 過濾目標內容

命令:「+」「-」

用法:通過「+」和「-」來對搜索結果進行過濾

比如在關鍵詞後加上「-推廣 -推廣鏈接」就可以排除搜索結果中包含相應字樣的鏈接。如果你發現廣告還沒有排除干凈,你也可以再加上「-廣告」通常就能徹底的消滅廣告。

02 搜索包含某關鍵詞的內容

命令:「intitle」

用法:通過「intitle」命令指定搜索結果中要包含的關鍵詞,注意「intitle」後邊連接的冒號是英文狀態下的。

03 搜索某一個格式的文件

命令:「filetype」

用法:通過「filetype」命令可以限制我們要搜索文件的類型,注意「filetype」後邊接的冒號也是英文狀態下的。

04 搜索特定時間范圍的內容

命令:「時間..時間」

用法:通過「時間..時間」命令可以限制我們要搜索的文件的時間,注意兩個時間的中間頓號沒有空格。

相對網路,谷歌、必應對於技術搜索,就相對准確許多,所以當你網路搜索不到時,嘗試下別的搜索引擎,說不定會有新發現。

現在程序員使用的機器語言,都是國外的,更准確的說,都是美國的。所以很多論壇、資料等,都是英文。如果你只會用中文來搜索,某些小眾的問題,當然搜不到啦。

所以,要學會使用英文關鍵字來搜索。

有時候甚至要去國外的一些論壇來搜索想要的答案,這就要求要有一定的英語閱讀能力,不能一看到英文帖就放棄。

有時候不管你如何搜索,都找不到自己想要的答案,該怎麼辦呢?這種情況下,就只能硬著頭皮嘗試自己解決了。

或者,尋求同事或朋友的幫助,尋求大腦風暴,說不定就會有思路。

如果有些問題是因為新器件帶來的,還可以找到器件供應商,讓他們安排技術支持幫忙查找原因。

除此之外,還可以把問題整理好,寫清發生的條件、復現步驟、測試方法、相關的LOG截圖等資料,去一些技術論壇發求助帖,尋找大牛的幫助。

做技術時間久了,發現有些問題確實無解,根本沒有辦法去解決它。

這時候,我一般會嘗試把它繞過,就是說,想辦法讓它無法復現,雖然問題還是存在,但是能把它掩蓋過去。

比如有些驅動在開機啟動時會載入不正常,那麼就讓它晚點啟動,或者手動載入。這也不失為一種解決問題的方法。

以上就是我的建立,希望對你有幫助。

首先作為一個程序員,一個優秀的程序員最最最重要的能力就是解決問題的能力。這里解決問題的能力當然就包含了解決 bug 能力了

畢竟,程序員這一生,可能會寫無數個 bug ,沒有說哪個程序員敢保證自己寫的程序沒有 bug 。 所以,寫了 bug ,遇到 bug 並不可怕,可怕的是你沒有解決 bug 的能力 。

作為一個程序員,解決 bug 的途徑有哪些呢?我們來一起聊一聊!

其實,每個程序員在學習編程的時候,都會使用編程工具,而現在的開發工具,其實功能都很強大。如果你自己合理利用編程工具,都了解和懂得開發工具的一些技巧,其實不僅僅能夠提高開發效率,而且還能夠幫助你解決很多編程中的實際問題。

debug 調試,大部分你常用的開發工具,都會有調試模式的,簡而言之,就是你編程的時候,遇到了不是自己所想的結果的時候,你可以使用 debug 模式,來一步一步的調試,在調試模式下一般每一步都會顯示所執行的結果,你可以看看在哪一步出錯了,執行的結果與你預想的結果不對,那麼你就能夠找到問題所在了。

還有就是,開發工具的控制台,都會提示出報錯信息的,現在的開發工具,都會直接告訴你哪一行,報了什麼錯。其實,很容易定位到錯誤的。你只需要在編程的過程中積累經驗,知道報什麼錯,用什麼方法來解決就行啦。

可是,提示的報錯信息,我不知道用什麼方法來解決的時候,該怎麼辦呢?這就是你需要積累的,也是問題中所描述的,就是通過搜索引擎來找答案。

不對,這里不應該是合理使用搜索引擎,應該是學會正確使用搜索引擎。比如:網路,你就不要用了,搜出一堆重復的信息,而且廣告也多。作為程序員,建議你使用谷歌搜索。

其實,你在編程中所遇到的幾乎所有的問題和 bug ,別人也同樣遇到過,因為不管是經驗豐富的老程序員,他技術再牛逼,也是初學者過來的,也都踩過你踩的坑。所以,互聯網是個好地方,裡麵包含了你想要的問題的答案。

你只要把報錯信息往搜索引擎上一放,回車一下,很多關於這個 bug 的答案就出來很多,你只需要找到跟你一樣的 bug ,就能找到答案了。

在這里必須提一下這個網站,所有的程序員有必要學會使用這個網站,其實,你編程中所遇到的問題,這個網站上幾乎都是由解答的。

Stack Overflow 可以說是最好的軟體程序類問答網站了,給軟體開發人員工作和學習提供了非常大的便利,以至於像小白,離了 Stack Overflow 簡直都不會寫程序了。

所以,建議大家一定要學會使用這個網站,對你編程肯定會有非常大的幫助的。

通過上面的方法,幾乎應該能夠解決到你所遇到的問題,但是,實在找不到答案的話,你可以問經驗比你豐富的老程序員,實在解決不了,那就換種方法吧!

網路,谷歌,debug,斷點調試,業務上的bug就需要問下同事或者產品。如果能知道大致范圍,哪一部分錯了,就換一種方法唄,一般都不會只有一種方法。

1.reload

2.restart

3.rewrite and then goto 2 or 4

4.reboot

5.rm -rf /

6.原諒我編不下去了[捂臉][捂臉][捂臉][捂臉][捂臉][捂臉][捂臉]

找bug跟醫生看病的思路是一樣的,要對症下葯。得先把問題的根源找到,找到根源以後問題就容易處理了。搜索引擎找不到的問題,說明這個問題不是一個常見的問題,具有獨特性,那麼從bug出現的路徑上一步一步去排查。必要時可以用排除法,盡可能的縮小排查范圍。另外,當軟體的業務邏輯比較繁多復雜的時候,一個結構清晰的架構能為你節省不少找bug的時間。還有,充分的單元測試能夠幫你減少出bug的機會。以上均為個人看法,歡迎討論!

一般程序員能碰到的bug無外乎其他上遊程序員寫庫時手抖留下些不匹配或者容易溢出的問題,搜一下差不多能解決問題。如果是自己寫的,那無非就是時序錯誤類型錯誤之類的,用break point一行行的調就好了。

再復雜點的bug就是程序員拿高薪的根本了,只可意會,不可言傳~

僅僅靠搜索引擎、其他網站那必然無法解決大量問題,因為很多問題是跟業務邏輯相關的,是沒有直接答案的。比如 游戲 開發有個界面一直無法顯示,這個問題就不是網路可以解決的。問題需要調試分析,這和破案非常像,但在開發過程中更有利的是問題有機會可以重現。破案是逆向工程,需要反推。解決代碼問題不僅僅可以反推,也可以通過閱讀代碼正向分析。下面說說如何debug一個業務邏輯問題。回到剛剛的例子,有個界面一直出不來,我們如何快速去定位:

1.思考這個問題發生的可能性。比如 游戲 內大量界面都是正常的,那麼可以對比正常界面代碼和異常界面代碼的區別,這是對比法。

2.假設創建正常界面和這個異常界面的邏輯代碼是一樣的,那麼問題就落到了這兩個界面內部,繼續在內部重復上面的對比法進行判斷,直到鎖定最終位置。

上面說的方法基本上可以杜絕卡在一個簡單問題上,這是擺脫新手的一個過程。選擇使用對比法或者其他方法的前提都是基於觀察和對項目的認識,所以,搜集「案發現場」是最關鍵的。

其他的問題,不屬於邏輯的,像其他網友說的那樣,有些通過到github、stackoverflow等地方解決的。這些問題也不是直接就去查找的,它通常也有個分析過程。比如你使用了一個庫,但是目前它不支持你的模塊。對於新手,就是直接網路或者google了。實際上這樣的問題也是有「案發現場」的。對於作者提供的api介面的統一性和便捷程度去推斷作者在相關支持模塊的位置以及命名以及拓展,再嘗試在文件夾中搜索。如果都找不到,再去Google上獲取更多的信息。重復推斷、分析,決定如何拓展或者繞過。

綜合上面的幾種問題,可以看到的是都離不開對現場的觀察和推理分析。這種能力也被稱為經驗。但是一般情況下你看不到它們這個分析過程,你能做的就是在實際環境中反復逼迫自己去思考,去訓練。這個推理的培養,不僅僅是對事情,也是對人。

我在入行 游戲 開發的前期,也是類似的情況。卡在不同種類的問題上,有些在簡單邏輯,有些在別人的代碼支持上。後面解決的問題多了,就會發現裡面共通的思維方式。常用的一些方法如下:

1.對比法,比較正常與異常代碼區別

2.二分查找法。分段注釋找問題,也會用在很多方面。比如最近版本突然出了一個奇怪bug,可以通過svn還原來定位。這個還原不是一個一個版本還原,而是用二分法去還原。

3.增加信息。在懷疑的位置或者過程添加日誌或者打斷點輔助自己更好的推理。

4.相似推理。比如一個引擎在api、性能使用程度上都非常友好,那麼它在別的地方也有可能相對表現比較好。這時候如果有個功能我們的實現需要很復雜才能完成,那麼就有可能是我們用錯了。相似推理不一定都能正確,但會提供一些幫助。

以上。

閱讀全文

與程序員小何網站被打相關的資料

熱點內容
游戲程序員負責角色 瀏覽:311
於丹pdf 瀏覽:713
反編譯ref 瀏覽:546
鴻蒙智能文件夾怎麼弄 瀏覽:544
grunt壓縮html 瀏覽:787
macpdfword轉換器 瀏覽:904
壓縮面膜是什麼材質 瀏覽:353
抖音發布作品怎麼建文件夾 瀏覽:13
安卓如何更改谷歌地區 瀏覽:273
airpods為什麼安卓連上聲音很大 瀏覽:510
聯想伺服器按鈕怎麼開不了機 瀏覽:93
蘋果xrapp程序庫沒有了怎麼辦 瀏覽:843
在上海程序員一個月多少工資 瀏覽:326
k歌解壓圖片 瀏覽:579
cad中清理多餘圖層的命令 瀏覽:989
華為nova8xe是安卓什麼 瀏覽:58
湯姆貓伺服器為什麼免費 瀏覽:274
safenet加密狗怎麼用 瀏覽:41
phpsql查詢變數 瀏覽:104
地磅儀表盤加密方法 瀏覽:480