<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    這一次ElasticSearch可能感受到了來自東方的壓力 GoFound

    VSole2022-08-03 16:20:43

    什么是 GoFound?

    GoFound 一個golang實現的全文檢索引擎,支持持久化和單機億級數據毫秒級查找,接口可以通過http調用。

    為什么要用GoFound?

    一個小巧精悍的全文檢索引擎,支持持久化和單機億級數據毫秒級查找。

    ElasticSearch缺點就是配置繁瑣、基于JVM對內存消耗比較大。

    gofound是原生編譯,會減少系統資源的消耗。而且對外無任何依賴。

    特性與優勢

    • 二分法查找
    • 快速排序法
    • 倒排索引
    • 正排索引
    • 文件分片
    • golang-jieba分詞
    • leveldb

    編譯與啟動

    git clone https://github.com/newpanjing/gofound.git
    go get && go build
    #作者是用的1.18版本,已經用到了1.17的新特性embed 和 fs,所以GO至少版本要大于1.17
    ./gofound --addr=:8080 --data=./data
    

    1.啟動服務端后就可以訪問到后臺

    http://127.0.0.1:8080/admin
    #筆者發現,明顯后臺沒有做完,但是接口基本可用,盡量別用后臺就行。
    

    2.使用接口進行新增和查詢操作

    #新增數據接口
    curl -H "Content-Type:application/json" -X POST --data '{"id":1,"text":"深圳北站","document":{"title":"阿森松島所445","number":223}}' 127.0.0.1:8080/api/index?database=testdb1
    #響應結果
    {
      "state": true,
      "message": "success"
    }
    #我定義了一個庫名:testdb1
    #查詢一下
    POST :127.0.0.1:8080/api/query?database=testdb1
    {
      "query": "北站",
      "page": 1,
      "limit": 10,
      "order": "desc",
      "highlight": {}
    }
    #響應結果
    {
        "state": true,
        "message": "success",
        "data": {
            "total": 3,
            "pageCount": 1,
            "page": 1,
            "limit": 10,
            "documents": [
                {
                    "id": 1,
                    "text": "深圳北站",
                    "document": {
                        "number": 223,
                        "title": "阿森松島所445"
                    },
                    "originalText": "深圳北站",
                    "score": 1,
                    "keys": [
                        "深圳",
                        "北站"
                    ]
                },
                {
                    "text": "深圳北站",
                    "document": {
                        "number": 223,
                        "title": "阿森松島所445"
                    },
                    "originalText": "深圳北站",
                    "score": 1,
                    "keys": [
                        "深圳",
                        "北站"
                    ]
                }
            ],
            "words": [
                "北站"
            ]
        }
    }
    

    其他操作,包括完整的CRUD還有分詞接口都在下面的文檔中可以找到,這里就不多作贅述,簡單的帶大家用用即可。還有分詞操作、CRUD所有操作,都可以看文檔來對著寫即可,記得盡量不要用他的可視化后臺,會出現各種未知問題。

    elasticsearch
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    漏洞公告 目前廠商已發布升級補丁以修復漏洞,補丁獲取鏈接: https://discuss.elastic.co/t/elastic-stack-6-1-3-and-5-6-7-security-update/117683 參考網址 來源:discuss.elastic.co 鏈接:https://discuss.elastic.co/t/elastic-stack-6-1-3-and-5-6
    GoFound 一個golang實現的全文檢索引擎,支持持久化和單機億級數據毫秒級查找,接口可以通過http調用。ElasticSearch缺點就是配置繁瑣、基于JVM對內存消耗比較大。gofound是原生編譯,會減少系統資源的消耗。而且對外無任何依賴。
    寫在前面:為什么要用ElasticSearch? 我們的應用經常需要添加檢索功能,開源的Elastic Search是目前全文檢索引擎的首選。它可以快速的存儲、搜索和分析海量數據。ElasticSearch是一個分布式搜索框架,提供RestfulAPI,底層基于Lucene,采用多shard(分片)的方式保證數據安全,并且提供自動resharding的功能。
    Bughound是一款開源的靜態代碼分析工具,可以幫助廣大研究人員分析自己的代碼,并將結果發送至Elasticsearch和Kibana,以更好地審查代碼中潛在的安全漏洞。
    最近在測試 Elasticsearch 的未授權訪問的問題,其本身是一個文檔型數據庫,如果存在未授權訪問的問題,那么就一定存在數據泄漏的風險,如果無任何有效數據,那么也可能被用來存儲違法違規的內容,同樣可以給企業帶來麻煩。大概意思是說:es 的所有索引都被刪除了,但是黑客團伙已經備份了所有數據,如果你想恢復這些數據,需要支付 0.021 比特幣。
    訪問http://ip:9200 檢查elasticsearch是否正常啟動NO.2 安裝kibanaapt-get install kibanaserver.host: "ip"service elasticsearch start
    一家主要國際 IT 招聘和軟件解決方案提供商的 Elasticsearch 服務器目前正在暴露超過 50 萬印度求職者的個人數據。這一切都始于 Anurag 在 Shodan 上掃描配置錯誤的數據庫, 并注意到一臺服務器將超過 6GB 的數據公開給公眾訪問。該服務器屬于一家最初位于美國公司,其辦事處遍布全球,包括印度。
    Zinc,一款Go語言開發的搜索引擎,可用于替代 elasticsearch,在 GitHub 開源不到一個月,已收獲 4.3k Star。一旦有居心叵測的人攻破網絡,會造成無法估量的損失。《Web安全攻防從入門到精通》結合紅日安全團隊的多年經驗,深入講解Web安全的相關知識。24小時內未聯系號主視為自動放棄!
    9月26日消息,印度一家醫療軟件提供商的Elasticsearch服務器被發現暴露在互聯網上,其中存儲了過去幾年來往返于印度各地的眾多印度及外國人的COVID抗原檢測結果。
    巴西電子商務公司在錯誤配置Elasticsearch服務器后無意中暴露了近18億條記錄。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类