Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: bonmario - Dicembre 12, 2024, 07:52:16 pm

Titolo: Lavorare da remoto con files della rete aziendale
Inserito da: bonmario - Dicembre 12, 2024, 07:52:16 pm
Ciao a tutti,
la cosa ha a che fare con Lazarus solo in maniera indiretta.

Sto sviluppando da poco un programma che gira in pausa pranzo dal mio PC. Il programma va a cercare in tutti i files presenti in alcune directories di un disco di rete se trova determinate parole. Se le trova, mi avvisa.
Oggi per la prima volta l'ho lanciato mentre lavoravo da casa, con la mia magnifica linea di casa che arriva a fatica ai 15 Mbps in download, ed 1 in upload, ed è stato un massacro ... lanciato dal lavoro ci mette circa 5 minuti, da casa quasi un'ora. Credo che dipenda dal fatto che per poter fare il suo lavoro, il programma è come se continuasse a fare il download del contenuto dei files dal disco di rete alla memoria del mi PC, per poi poter cercare le stringhe all'interno, potrebbe essere o sbaglio?

Oggi non ho avuto tempo, e domani sono in ferie, ma vorrei comunque portarmi avanti ...

Come dicevo prima, il programma risiede sul mio PC, ed attualmente viene lanciato da lì.
Stavo pensando di aggirare il problema, copiando il mio programma sullo stesso disco di rete su cui risiedono i files da verificare, e poi lanciarlo da lì.
Secondo voi potrebbe funzionare?

Grazie, Mario
Titolo: Re:Lavorare da remoto con files della rete aziendale
Inserito da: DragoRosso - Dicembre 12, 2024, 09:45:38 pm
Qualsiasi programma per accedere ai file in rete deve fisicamente "accedervi", ciò significa che devo aprirlo, leggere il contenuto trasferendolo in memoria, elaborare "qualcosa" e poi richiuderlo.

Tutte queste operazioni vengono effettuate trasferendo ogni singolo byte dal file (remoto) al programma che vi accede, ovviamente via rete se il file remoto è in rete.

Il tuo programma và lanciato dalla rete aziendale, su un PC collegato in teleassistenza o tramite terminal server. Se hai un PC fisso in azienda che usi prettamente te, potresti installare uno dei programmi di teleassistenza (come AnyDesk, TeamViewer, o anche altri gratuiti) e lavorare in remoto sul tuo PC. Sconsiglio di attivare il Desktop Remoto di Windows, non mi pare abbia una sicurezza intrinseca molto elevata (io sicuramente non "proietterei" il mio PC su Internet tramite Desktop Remoto.

Ci sono anche altre soluzioni: il tuo programma gira su un server aziendale e rimane in "standby" in attesa di un comando ad esempio via rete (potrebbe essere una qualsiasi cosa ... da REST a una stringa via TCP) e poi ritorna i risultati sulla stessa connessione.

P.S.: ahhh ho preso come base che usi Windows, ma con Linux non è molto differente, anzi potresti usare ssh per connetterti ad un qualsiasi PC in rete aziendale. Linux ha un controllo e una sicurezza sulla rete che reputo decisamente migliore a quella di Windows.
Titolo: Re:Lavorare da remoto con files della rete aziendale
Inserito da: tito_livio - Dicembre 12, 2024, 10:47:42 pm
Anche se il programma lo metti sul disco di rete e lo lanci da casa, il programma rimarrà lento perché gira sempre sul tuo PC da casa. Anzi dovrai aggiungere il tempo di download del programma.
Come ti ha detto Dragorosso, conviene usare un programma di teleassistenza, con il programma che lo "vedi" girare sul server remoto.
Per motivi di sicurezza io userei una vpn o meglio ssh e poi, all'interno lancerei il Desktop remoto (o l'equivalente Linux) con una password robusta.
Oppure, non ti colleghi in nessun modo e fai in modo che il programma venga eseguito automaticamente all'ora desiderata e se trova qualcosa ti manda un'email.
Ciao.
Titolo: Re:Lavorare da remoto con files della rete aziendale
Inserito da: bonmario - Dicembre 13, 2024, 07:38:57 am
Ok, grazie !
Titolo: Re:Lavorare da remoto con files della rete aziendale
Inserito da: nomorelogic - Dicembre 13, 2024, 11:52:44 am
penso anche io che la cosa migliore sia schedulare il lancio ma fare in modo che i dati siano accessibili in locale

se il server è su linux c'è anche la possibilità di usare il comando screen
in poche parole accedi in ssh, "entri in screen" (che è una shell) e lanci il programma
i programmi lanciati da screen sono detached e quindi chiudendo la shell, continuano a girare

in sostanta è una specie di desktop remoto ma da shell