{"id":110,"date":"2019-10-22T21:31:28","date_gmt":"2019-10-22T19:31:28","guid":{"rendered":"http:\/\/christophe.valmir.name\/?page_id=110"},"modified":"2020-08-16T18:24:47","modified_gmt":"2020-08-16T16:24:47","slug":"resurexion2","status":"publish","type":"page","link":"https:\/\/christophe.valmir.name\/?page_id=110","title":{"rendered":"Resurexio2"},"content":{"rendered":"\n<p>Resurexio2 est n\u00e9e d\u2019une probl\u00e9matique diff\u00e9rente de Resurexio1. En 2009, le cl\u00e9 USB \u00e9tait un peu plus r\u00e9pandu et la volum\u00e9trique des donn\u00e9es \u00e0 sauvegarder en ligne \u00e0 exploser. Les sauvegardes en ligne \u00e9taient tr\u00e8s lentes.<\/p>\n\n\n\n<p>L\u2019\u00e9mergence d\u2019un nouveau langage le Golang, que m\u2019a communiqu\u00e9 un ami, a attir\u00e9 mon attention. Les premiers essais et la philosophie du langage m\u2019a s\u00e9duit. Que pouvait m\u2019apportait ce langage a l\u2019\u00e9poque :<\/p>\n\n\n\n<ul><li>R\u00e9aliser des taches multiples en m\u00eame temps facilement. Sous les autres langages ont appel\u00e9 \u00e7a des threads. Dans le cas de go l\u2019avantage, ce sont les pipes de communication entre les diff\u00e9rentes goroutine plus rapide \u00e0 mettre en place.<\/li><li>Les erreurs de compilation plus facile \u00e0 trouver. J\u2019ai vu que les nouveau compilateur C permettait de faire \u00e7a.<\/li><li> Une variable d\u00e9clar\u00e9e qui n\u2019est pas utilis\u00e9 provoque une erreur.<\/li><li> Une communaut\u00e9 tr\u00e8s experte dans les OS et dans la s\u00e9curit\u00e9<\/li><\/ul>\n\n\n\n<p>Les soucis que l\u2019on avait avec ce langage (faut bien des soucis).<\/p>\n\n\n\n<ul><li>Pas d\u2019interface.<\/li><li>Plusieurs modules inexistants.<\/li><\/ul>\n\n\n\n<p>L\u2019absence\nd\u2019interface ne nous faisait pas peur. Car, j\u2019avais le sentiment que toutes les\napplications devaient \u00eatre port\u00e9 dans les navigateurs web. Les modules\ninexistants comme les connexions SSH (avec proxy) ne nous posaient pas de\nsoucis car la communaut\u00e9 allait le d\u00e9velopper.<\/p>\n\n\n\n<p>Il ne restait plus qu\u2019\u00e0 conna\u00eetre les objectifs du produit.<\/p>\n\n\n\n<ul><li>Le produit doit analyser les changements de fichier en temps r\u00e9el<\/li><li>Quand l\u2019ordinateur red\u00e9marrer, il faut \u00eatre capable de trouver les fichiers modifier tr\u00e8s rapidement.<\/li><li>Cr\u00e9er une interface HTML compatible avec tous les navigateurs.<\/li><li>Cr\u00e9er un manager qui surveille les activit\u00e9s du programme principal et qui s\u2019ex\u00e9cute depuis les services. \u00c7a permet de faire les mises \u00e0 jour proprement et de loguer les anomalies lier \u00e0 un crash.<\/li><li> Passer tous les serveurs en openBSD et refaire les conteneurisations.<\/li><li>Pouvoir sauvegarde tous types de support aussi bien du FTP, du HTTP, des partages windows, \u2026<\/li><li>Reconna\u00eetre les applications sur le serveur et cr\u00e9er une m\u00e9thode de sauvegarde stable (Actuellement non fait ).<\/li><\/ul>\n\n\n\n<p>Proposer une\nsauvegarde \u00e0 la vitesse de la ligne internet. Ce qui arrive dans tous les\nsauvegardes, c\u2019est je sauvegarde ou je ne sauvegarde pas. Pendant que le\nlogiciel sauvegarde en ligne, le r\u00e9seau internet est satur\u00e9. L\u2019id\u00e9e \u00e9tait de ne\npas couper la sauvegarde mais la ralentir, afin que les utilisateurs est\ntoujours acc\u00e8s \u00e0 leurs emails sans couper la sauvegarde.<\/p>\n\n\n\n<p>L\u2019autre id\u00e9e que\nles autres sauvegardes ne faisaient pas, c\u2019est la sauvegarde fragment\u00e9e. La sauvegarde\nfragment\u00e9e n\u2019est pas une sauvegarde compl\u00e8te mais une sauvegarde d\u00e9coup\u00e9 sous\nforme de taille de fichier. Les petits fichiers sont toujours prioritaires sur\nles gros fichiers, du coup tous au long de la journ\u00e9e les fichiers excels ou\nsage sont sur d\u2019\u00eatre sauvegard\u00e9 dans la journ\u00e9e mais si un fichier pst (les\ngros fichiers outlook) ne l\u2019est pas.<\/p>\n\n\n\n<p>C\u2019est comme cela que resurexio2 voit le jour avec une interface modeste HTML en 2011, du coup peu commercialisable. En attendant, j\u2019ai vu que sur les synology tous \u00eatre full HTML en utilisant le firmware ExtJS. C\u2019est comme cela qu\u2019est n\u00e9e le plugin Go\/Extjs avec de nouvelle perspective de d\u00e9veloppement. L\u2019interface fut fini en 2013.<\/p>\n\n\n\n<p>En 2018 voici les caract\u00e9ristiques de resurexio:<\/p>\n\n\n\n<ul><li>Copies des fichiers des petits fichiers en priorit\u00e9s<\/li><li>Copies via plusieurs lignes internets<\/li><li>Copies imm\u00e9diat, exemple sur rsync il faut quelques minutes avant une copie.<\/li><li>R\u00e9paration des fichiers \u00e0 copier plus rapide que sur les autres logiciels ( go permet de parser les dossiers tr\u00e8s rapidement)<\/li><li>Blockeur de transfert quand les fichiers sont rep\u00e9r\u00e9s crypt\u00e9s, ce qui \u00e9vite que les ranconwares puissent remont\u00e9 sur les sauvegardes.<\/li><li>Copies peut \u00eatre limit\u00e9 sur une plage horaire exemple ( les heures de travail)<\/li><li>Connexion \u00e0 une blockchain priv\u00e9e sur mesure.<\/li><li>Possibilit\u00e9 de crypter les donn\u00e9es \u00e0 l&rsquo;origine r\u00e9sistant aux machines quantiques ( en cours homologations sur NIST en 2019).<\/li><li>Interface pour \u00eatre manipul\u00e9 a distance gr\u00e2ce \u00e0 son interface web.<\/li><li>Connexion au r\u00e9seau Sia sur blockchain permettant une prix de 2e\/To<\/li><\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Resurexio2 est n\u00e9e d\u2019une probl\u00e9matique diff\u00e9rente de Resurexio1. En 2009, le cl\u00e9 USB \u00e9tait un peu plus r\u00e9pandu et la volum\u00e9trique des donn\u00e9es \u00e0 sauvegarder en ligne \u00e0 exploser. Les sauvegardes en ligne \u00e9taient tr\u00e8s lentes. L\u2019\u00e9mergence d\u2019un nouveau langage le Golang, que m\u2019a communiqu\u00e9 un ami, a attir\u00e9 mon attention. Les premiers essais et<\/p>\n<p><a href=\"https:\/\/christophe.valmir.name\/?page_id=110\" class=\"more-link\">Lire la suite<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":95,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/110"}],"collection":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=110"}],"version-history":[{"count":6,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/110\/revisions"}],"predecessor-version":[{"id":691,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/110\/revisions\/691"}],"up":[{"embeddable":true,"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=\/wp\/v2\/pages\/95"}],"wp:attachment":[{"href":"https:\/\/christophe.valmir.name\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}