Suggerimenti per l'automazione. Suggerimenti per l'automazione 1s 8.3 funziona lentamente sulla rete

Il sistema 1C occupa una posizione dominante nel mercato dell'automazione per le piccole e medie imprese. Se un'azienda ha scelto il sistema contabile 1C, di solito vi lavorano quasi tutti i dipendenti, dagli specialisti ordinari al management. Di conseguenza, la velocità dei processi aziendali dell’azienda dipende dalla velocità di 1C. Se 1C funziona a una velocità insoddisfacente, ciò influisce direttamente sul lavoro dell'intera azienda e sul profitto.

Esiste davvero tre metodi di accelerazione 1C:

  • Aumento della capacità dell'hardware.
  • Ottimizzazione del sistema operativo e delle impostazioni del DBMS.
  • Ottimizzazione del codice e degli algoritmi in 1C.

Il primo metodo richiede l'acquisto di attrezzature e licenze, il terzo richiede molto lavoro da parte dei programmatori e, di conseguenza, entrambe le modalità comportano costi finanziari significativi. Prima di tutto è necessario prestare attenzione al codice del programma, poiché nessun aumento della capacità del server può compensare un codice errato. Qualunque programmatore sa che con poche righe di codice è possibile creare un processo che caricherà completamente le risorse di qualsiasi server.

Se un'azienda è sicura che il codice del programma sia ottimale, ma funzioni comunque lentamente, la direzione di solito decide di aumentare la capacità del server. A questo punto sorge spontanea una domanda: cosa manca, quanto e cosa bisogna aggiungere alla fine.

L’azienda 1C dà una risposta piuttosto vaga alla domanda su quante risorse siano necessarie; ne abbiamo parlato in precedenza nei nostri post. E quindi, devi condurre esperimenti in modo indipendente e capire da cosa dipendono le prestazioni di 1C. Gli esperimenti con le prestazioni del programma presso EFSOL sono descritti di seguito.

Quando si lavora con 1C 8.2, soprattutto con configurazioni che utilizzano moduli gestiti, si è notato un fatto strano: 1C funziona più velocemente su una workstation che su un server potente. Inoltre tutte le caratteristiche della workstation sono peggiori di quelle del server.



Tabella 1 – Configurazioni sulle quali è stato effettuato il test iniziale

La workstation mostra prestazioni superiori del 155% rispetto a un server 1C con caratteristiche superiori. Abbiamo iniziato a capire cosa stava succedendo e a restringere la ricerca.

Figura 1 – Misurazioni delle prestazioni sulla postazione di lavoro utilizzando il test Gilev

Il primo sospetto era che il test di Gilev fosse inadeguato. Le misurazioni relative all’apertura di moduli, alla pubblicazione di documenti, alla generazione di report, ecc. utilizzando strumenti di strumentazione hanno mostrato che il test di Gilev produce una valutazione proporzionale alla velocità effettiva di lavoro in 1C.

Numero e frequenza della RAM

Un'analisi delle informazioni disponibili su Internet ha mostrato che molti scrivono sulla dipendenza delle prestazioni 1C dalla frequenza della memoria. Dipende dalla frequenza, non dal volume. Abbiamo deciso di testare questa ipotesi, poiché abbiamo una frequenza RAM di 1066 Mhz sul server contro 1333 Mhz sulla workstation, e la quantità di RAM sul server è già molto più elevata. Abbiamo deciso di installare immediatamente non 1066 Mhz, ma 800 Mhz in modo che l'effetto della dipendenza delle prestazioni dalla frequenza della memoria fosse più chiaro. Il risultato è che la produttività è scesa del 12% ed è ammontata a 39,37 unità. Abbiamo installato la memoria sul server con una frequenza di 1333 Mhz invece di 1066 Mhz e abbiamo riscontrato un leggero aumento delle prestazioni - circa l'11%. La produttività è stata di 19,53 unità. Di conseguenza, non è una questione di memoria, anche se la sua frequenza aumenta leggermente.

Figura 2 – Misurazioni delle prestazioni su una workstation dopo aver abbassato la frequenza della RAM


Figura 3 – Misurazioni delle prestazioni del server dopo aver aumentato la frequenza della RAM

Sottosistema del disco

L'ipotesi successiva era legata al sottosistema del disco. Sono subito nate due ipotesi:

  • Gli SSD sono migliori delle unità SAS, anche se si trovano nel raid 10.
  • iSCSI è lento o non corretto.

Pertanto, nella workstation è stato installato un normale disco SATA invece di un SSD, e lo stesso è stato fatto con il server: il database è stato posizionato su un disco SATA locale. Di conseguenza, le misurazioni delle prestazioni non sono cambiate affatto. Molto probabilmente, ciò accade perché è presente una quantità sufficiente di RAM e i dischi non sono praticamente coinvolti in alcun modo durante il test.

processore

I processori sul server sono, ovviamente, più potenti e ce ne sono due, ma la frequenza è leggermente inferiore rispetto a quella della workstation. Abbiamo deciso di verificare l'effetto della frequenza del processore sulle prestazioni: non c'erano processori con una frequenza più alta a portata di mano per il server, quindi abbiamo abbassato la frequenza del processore sulla workstation. Lo abbiamo immediatamente abbassato a 1,6 in modo che la correlazione diventasse più chiara. Il test ha dimostrato che le prestazioni sono diminuite in modo significativo, ma anche con un processore 1.6 la workstation ha prodotto quasi 28 unità, ovvero quasi 1,5 volte di più rispetto al server.

Figura 4 – Misurazioni delle prestazioni su una workstation con processore da 1,6 Ghz

Scheda video

Ci sono informazioni su Internet che le prestazioni di 1C possono essere influenzate dalla scheda video. Abbiamo provato a utilizzare il video integrato della workstation, un adattatore professionale Nvidia NVIDIA® Quadro® 4000 2 Gb DDR5 e una vecchia scheda video GeForce 16MbSDR. Durante il test Gilev non è stata notata alcuna differenza significativa. Forse la scheda video ha ancora effetto, ma in condizioni reali, quando è necessario aprire moduli gestiti, ecc.

Al momento ci sono due sospetti sul perché la workstation funzioni più velocemente anche con caratteristiche notevolmente peggiori:

  1. PROCESSORE. Il tipo di processore sulla workstation è più adatto a 1C.
  2. Chipset. A parità di condizioni, la nostra workstation ha un chipset più recente, forse questo è il problema.

Abbiamo in programma di acquistare i componenti necessari e di continuare i test per scoprire finalmente da cosa dipendono in gran parte le prestazioni 1C. Mentre è in corso il processo di approvazione e di approvvigionamento, abbiamo deciso di eseguire l'ottimizzazione, soprattutto perché non costa nulla. Sono state individuate le seguenti fasi:

Fase 1. Configurazione del sistema

Per prima cosa, effettuiamo le seguenti impostazioni nel BIOS e nel sistema operativo:

  1. Nel BIOS del server, disabilitiamo tutte le impostazioni per risparmiare la potenza del processore.
  2. Seleziona il piano “Prestazioni massime” nel sistema operativo.
  3. Anche il processore è ottimizzato per le massime prestazioni. Questo può essere fatto utilizzando l'utilità PowerSchemeEd.

Fase 2. Configurazione del server SQL e del server 1C:Enterprise

Apportiamo le seguenti modifiche alle impostazioni del server DBMS e 1C:Enterprise.

  1. Impostazione del protocollo di memoria condivisa:

    • La memoria condivisa sarà abilitata solo sulla piattaforma a partire da 1C 8.2.17, nelle versioni precedenti sarà abilitata Named Pipe, leggermente inferiore nella velocità operativa. Questa tecnologia funziona solo se i servizi 1C e MSSQL sono installati sullo stesso server fisico o virtuale.
  2. Si consiglia di impostare il servizio 1C in modalità debug poiché, paradossalmente, ciò aumenta le prestazioni. Per impostazione predefinita, il debug è disabilitato sul server.
  3. Configurazione del server SQL:

    • Ci serve solo il server, gli altri servizi che lo riguardano e, magari, qualcuno li usa, non fanno altro che rallentare il lavoro. Arrestiamo e disabilitiamo servizi come: ricerca full-text (1C ha il proprio meccanismo di ricerca full-text), servizi di integrazione, ecc.
    • Impostiamo la quantità massima di memoria allocata al server. Ciò è necessario affinché il server SQL calcoli questa quantità e pulisca anticipatamente la memoria.
    • Impostiamo il numero massimo di thread (Thread di lavoro massimi) e impostiamo la priorità aumentata del server (Priorità Boost).

Fase 3: Impostazione di un database di produzione

Dopo aver ottimizzato il server DBMS e 1C:Enterprise, passiamo alle impostazioni del database. Se il database non è ancora stato espanso dal file .dt e se ne conosce la dimensione approssimativa, allora è meglio indicare subito la dimensione di inizializzazione del file primario con “>=” della dimensione del database, ma questo è un problema del gusto, crescerà ancora durante l'espansione. Ma è necessario specificare la dimensione di aumento automatico: circa 200 MB per base e 50 MB per log, perché I valori predefiniti – crescita di 1 MB e 10% rallentano molto il lavoro del server quando è necessario aumentare il file ogni 3 transazioni. Inoltre, è meglio specificare l'archiviazione del file di database e del file di registro su diversi dischi fisici o gruppi RAID se viene utilizzato un array RAID e limitare la crescita del registro. Si consiglia di spostare il file Tempdb in un array ad alta velocità poiché il DBMS vi accede abbastanza spesso.

Fase 4. Impostazione delle attività pianificate

Le attività pianificate vengono create semplicemente utilizzando il Piano di manutenzione nella sezione Gestione, utilizzando strumenti grafici, quindi non descriveremo in dettaglio come ciò avviene. Diamo un'occhiata a quali operazioni devono essere eseguite per migliorare la produttività.

  • La deframmentazione degli indici e l'aggiornamento delle statistiche devono essere eseguiti quotidianamente, perché se la frammentazione dell'indice è > 25%, riduce drasticamente le prestazioni del server.
  • La deframmentazione e l'aggiornamento delle statistiche vengono eseguiti rapidamente e non richiedono la disconnessione degli utenti. Si consiglia anche di farlo quotidianamente.
  • Reindicizzazione completa – eseguita con il database bloccato, si consiglia di effettuarla almeno una volta alla settimana. Naturalmente, dopo la completa reindicizzazione, gli indici vengono immediatamente deframmentati e le statistiche vengono aggiornate.

Di conseguenza, con l'aiuto della messa a punto del sistema, del server SQL e del database di lavoro, siamo riusciti ad aumentare la produttività del 46%. Le misurazioni sono state effettuate utilizzando lo strumento 1C KIP e utilizzando il test Gilev. Quest'ultimo ha evidenziato 25,6 unità contro le 17,53 originarie.

Breve conclusione

  1. Le prestazioni 1C non dipendono molto dalla frequenza della RAM. Una volta raggiunta una quantità di memoria sufficiente, un'ulteriore espansione della memoria non ha senso, poiché non porta ad un aumento delle prestazioni.
  2. Le prestazioni 1C non dipendono dalla scheda video.
  3. Le prestazioni 1C non dipendono dal sottosistema del disco, a condizione che la coda di lettura o scrittura del disco non venga superata. Se sono installate unità SATA e la loro coda non viene superata, l'installazione di un SSD non migliorerà le prestazioni.
  4. Le prestazioni dipendono molto dalla frequenza del processore.
  5. Con una corretta configurazione del sistema operativo e del server MSSQL è possibile ottenere un aumento delle prestazioni 1C del 40-50% senza costi materiali.

ATTENZIONE! Un punto molto importante! Tutte le misurazioni sono state eseguite su una base di prova utilizzando il test Gilev e gli strumenti di strumentazione 1C. Il comportamento di un database reale con utenti reali può differire dai risultati ottenuti. Ad esempio, nel database di test non abbiamo riscontrato alcuna dipendenza delle prestazioni dalla scheda video e dalla quantità di RAM. Queste conclusioni sono piuttosto discutibili e in condizioni reali questi fattori possono avere un impatto significativo sulle prestazioni. Quando si lavora con configurazioni che utilizzano moduli gestiti, una scheda video è importante e un potente processore grafico accelera il lavoro in termini di disegno dell'interfaccia del programma, visivamente questo si manifesta nel lavoro più veloce di 1C.

Il tuo 1C funziona lentamente? Ordina la manutenzione IT per computer e server da parte di specialisti EFSOL con molti anni di esperienza o trasferisci il tuo 1C su un server virtuale 1C potente e tollerante ai guasti.

Integrazione del sistema. Consulenza

  1. Impostazione di attività di routine e in background;
  2. Diagnostica ed eliminazione degli errori nella base informativa, che ha un formato di archiviazione dei dati di file;
  3. Avvia l'indicizzazione della ricerca full-text in 1C o disattivala completamente;
  4. Lancio del database sulle ultime Piattaforme 8.3.8;
  5. Esecuzione in un thin client;
  6. Aumentare la velocità di ritrasferimento dei documenti quando l'antivirus è disabilitato;
  7. Eseguire il ricalcolo dei totali e il ripristino della sequenza;
  8. Eseguire il testing e la correzione del database, controllando con l'utility chdbfl.exe;
  9. Se la configurazione non è standard, ovvero modificata dai programmatori per una specifica organizzazione, eseguire un Configuration Check;
  10. Disabilitare le modalità funzionali non necessarie;
  11. Configurare i diritti utente;
  12. Convoluzione della base;
  13. Aggiornamento dell'hardware.

Metodo 1. Impostazione di processi pianificati e in background

L'applicazione nella nuova edizione di 1C Accounting 3.0, oltre a svolgere il lavoro principale, avvia operazioni in background, che portano ad una diminuzione delle prestazioni del programma.

La modalità background è una modalità standby, ovvero l'operazione è sempre in esecuzione, anche se non viene utilizzata.

Passaggio 1. Impostazione dei lavori di routine e in background

Apriamo l'elenco delle attività di routine e in background: sezione Amministrazione – Supporto e manutenzione – Operazioni di routine – Attività di routine e in background:

Dopo aver avviato il programma 1C 8.3, i lavori in background vengono avviati automaticamente e vengono eseguite attività di routine, che utilizzano un'enorme quantità di risorse e rallentano il programma. Pertanto, è necessario analizzare il lavoro dei contabili e determinare quali attività in background dovrebbero essere lasciate nell'esecuzione automatica e quali dovrebbero essere disabilitate.

Nella figura vediamo un elenco di attività di routine avviate in 1C 8.3 Contabilità:

Nella figura vediamo l'elenco dei lavori in background completati:

Per esempio,

  • Il programma Contabilità 1C 8.3 è costantemente collegato al sito per aggiornare i vari classificatori;
  • Se l'impresa non effettua operazioni relative alla valuta estera, non è necessario tenere traccia dei tassi di cambio;
  • Se il contabile non utilizza la ricerca full-text nel programma, non è consigliabile eseguire il processo di "Estrazione testo".

Passaggio 2: disabilita le attività non necessarie

Diamo uno sguardo più da vicino a come disabilitare il download. Posizionare il cursore sulla riga desiderata e fare doppio clic:

Per disabilitare l'attività, deseleziona la casella di controllo Abilitato:

Passaggio 3. Impostazione di un programma per le attività di routine

Diamo uno sguardo più da vicino a come impostare un programma. Posizionare il cursore sulla riga desiderata e fare doppio clic:

Seleziona la voce Pianificazione:

Nella finestra che si apre, vai alla scheda desiderata ed effettua le impostazioni appropriate:

Metodo 2. Diagnosi ed eliminazione degli errori in una base di informazioni che ha un formato di archiviazione dati su file

Passo 1.

Creiamo una copia di backup del database.

Passo 2.

Iniziamo la procedura. Per fare ciò, aprire il Configuratore ed eseguire la procedura Test e correzione della base informazioni: sezione Amministrazione – Test e correzione. Selezionare i controlli e le modalità da eseguire per l'infobase:

Diamo uno sguardo più da vicino alle opzioni di verifica proposte:

  • Reindicizzazione delle tabelle dell'infobase: ricostruisce gli indici delle tabelle per migliorare le prestazioni del database;
  • Verifica dell'integrità logica della base di informazioni – verifica della logica del database;
  • Controllo dell'integrità referenziale della base di informazioni - controllo dell'integrità logica del database per rilevare collegamenti “interrotti”;
  • Ricalcolo dei totali – ricalcolo dei totali delle tabelle dei registri di accumulo;
  • Compressione delle tabelle dell'infobase: riduce la dimensione del database dopo il test e la correzione;
  • Ristrutturazione delle tabelle dell'infobase: ottimizza la struttura del database utilizzando file ausiliari per aumentare stabilità e prestazioni.

Se selezioniamo l'opzione Procedura di test e correzione nella modalità Verifica dell'integrità referenziale dell'infobase, diventano disponibili le voci di impostazione per l'elaborazione degli errori del database:

  • Paragrafo Quando ci sono riferimenti a oggetti inesistenti significa che quando vengono rilevati collegamenti "interrotti", elaborerà i collegamenti utilizzando l'opzione selezionata;
  • Paragrafo In caso di perdita parziale dei dati dell'oggetto significa che i dati rimanenti sono sufficienti per ripristinare i dati di qualche oggetto.

La procedura per testare e correggere la base informativa 1C può essere eseguita solo in modalità esclusiva.

Metodo 3. Avvia l'indicizzazione della ricerca full-text in 1C o disattivala completamente

1C ha sviluppato la ricerca dei dati full-text per facilitare all'utente la ricerca di informazioni non familiari. Una caratteristica della ricerca dei dati full-text in 1C 8.3 è:

  • L'utente può inserire una query di ricerca in un modulo semplice e utilizzare operatori speciali come: e, o, no.
  • La ricerca dei dati full-text funziona con campi del tipo ValueStorage e con campi di testo lunghi e all'utente non verranno mostrati risultati per i quali non dispone dei diritti.

Ad esempio, è necessario impostare una ricerca full-text nei documenti del Report Avanzato.

Passo 1.

Passo 2.

Aprire il documento Report avanzato: menu Configuratore – Apri configurazione.

Passaggio 3.

Nella riga Ricerca full-text, seleziona Utilizza: Rapporto avanzato – Campo di immissione – Ricerca full-text:

Passaggio 4.

Lanciamo il programma e aggiorniamo la modalità di ricerca full-text. Aprire Operazioni regolari: sezione Amministrazione – Impostazioni del programma – Supporto e manutenzione:

Passaggio 5.

Apri le impostazioni e aggiorna l'indice utilizzando il pulsante Aggiorna indice:

Metodo 4. Lancio del database sulle piattaforme più recenti 8.3.8

Come aggiornare la piattaforma tecnologica 1C 8.3, guarda il nostro video tutorial:

Gli specialisti 1C hanno migliorato la distribuzione del carico:

  • È possibile controllare in modo più accurato la quantità di memoria consumata dai processi di lavoro del server, il che rende il cluster più resistente alle azioni imprudenti degli utenti.
  • Ristrutturazione delle basi di informazione in background. La nuova funzionalità consente di ridurre al minimo i tempi di inattività del sistema necessari per aggiornare le soluzioni applicative.
  • La versione 8.3 della piattaforma ha ricevuto una nuova interfaccia per le applicazioni “Taxi”, più comoda e visiva con un nuovo design luminoso. Funzionalità di navigazione dell'app migliorate. L'utente può personalizzare autonomamente il proprio spazio di lavoro posizionando i pannelli in diverse aree dello schermo. Il nuovo meccanismo di immissione della riga accelera notevolmente la ricerca dei dati. Per ulteriori informazioni sulle nuove funzionalità dell'interfaccia “Taxi” del programma di contabilità 1C 8.3, guarda il nostro video:

Metodo 5. Avviare in Thin Client

Lavorare in modalità thin client è possibile solo in modalità applicazione gestita. Nella modalità thin client, tutte le azioni vengono eseguite sul server e l'utente riceve solo una visualizzazione delle informazioni ricevute. Questa modalità operativa non richiede grandi risorse sia del sistema che del canale di comunicazione.

Metodo 6. Cambia il software antivirus

Se hai installato l'antivirus Avast o Kaspersky, è consigliabile sostituirlo con un altro. L'esperienza ha dimostrato che la velocità di trasferimento dei documenti quando l'antivirus è disabilitato aumenta in modo significativo, poiché gli antivirus assorbono le risorse del computer.

Metodo 7. Testare e correggere il database, controllando con l'utilità chdbfl.exe

È necessario effettuare il Testing e la correzione del database, dopo averne prima fatta una copia.

Passaggio 1. Crea una copia del database

Come creare una copia di backup di 1C 8.3, vedere il seguente video tutorial:

Passaggio 2. Controllare utilizzando l'utilità chdbfl.exe

L'utilità chdbfl.exe viene utilizzata nei casi in cui il sistema non si avvia nemmeno in modalità configuratore. L'utility si trova nella cartella “bin” della piattaforma tecnologica installata, ad esempio: c:\Program Files (x86)\1cv8\8.3.9.1818\bin\chdbfl.exe:

Controlliamo utilizzando l'utilità chdbfl.exe:

Passaggio 3. Eseguire il test e la correzione del database

Eseguire il test e la correzione del database avviando il sistema in modalità configuratore.

Passaggio 4. Ripristino della sequenza dei documenti

Per ripristinare la sequenza in 1C 8.3, aprire Tutte le funzioni: Menu principale - Tutte le funzioni. Selezionare l'elemento desiderato e aprirlo utilizzando il pulsante Apri:

Nella finestra che si apre, vai alla scheda Ripristina sequenze e fai clic su Ripristina o Ripristina tutto:

Metodo 8. Se la configurazione non è standard, controllare la configurazione

Se la configurazione non è standard, ovvero modificata dai programmatori per un'organizzazione specifica, controlliamo la configurazione.

Passo 1.

Lanciamo il programma in modalità Configuratore.

Passo 2.

Aprire la configurazione del database: sezione Configurazione – Configurazione Database:

Passaggio 3.

Selezionare la voce Verifica Configurazione ed effettuare le impostazioni:

Metodo 9: disabilitare le modalità funzionali non necessarie

Apri la Funzionalità del programma 1C 8.3: sezione Principale - Impostazioni - Funzionalità, effettua le impostazioni per ciascuna sezione:

Metodo 10. Configurare i diritti utente

Passo 1.

Lanciamo 1C 8.3 in modalità Configuratore.

Passo 2.

Aprire l'elenco degli utenti: sezione Amministrazione – Utenti. Nella scheda Altro determiniamo quali ruoli devono essere assegnati all'utente e li selezioniamo.

Riducendo la funzionalità selezionata si riduce il tempo impiegato dal programma per ordinare i moduli gestiti quando si apre un elenco di documenti, ovvero meno cose inutili sono presenti nell'interfaccia gestita, più velocemente funziona:

Metodo 11. Deframmentazione di un disco con un database di file

La procedura di deframmentazione del disco ottimizza i file presenti sul disco rigido per aumentare la velocità del sistema. La deframmentazione dovrebbe essere eseguita solo quando necessario, poiché aumenta l'usura del disco.

Con il disco rigido selezionato, utilizzare il pulsante destro del mouse per richiamare il comando Proprietà:

Nella scheda Strumenti, seleziona Ottimizzazione e deframmentazione disco:

Metodo 12. Piegatura della base

– si tratta dell’iscrizione dei saldi correnti a una certa data e della rimozione dei vecchi documenti non necessari. Questo metodo può essere utile se il database è di grandi dimensioni, ad esempio per diversi anni. Il rollup deve essere eseguito senza che gli utenti lavorino nel sistema.

Passaggio 1. Creare una copia del database

Passaggio 2. Eseguiamo la procedura per comprimere il database 1C 8.3

Collasso della sezione Amministrazione – Servizi – Base informativa.

Nella prima fase il programma 1C 8.3 suggerisce di effettuare una copia di backup, in cui è necessario specificare la directory in cui salvare. Fare clic su Avanti:

Il tuo 1C è di nuovo lento?Stai perdendo tempo mentre prepari un rapporto?Stanco di bere il tè mentre aspetti lo scambio di dati?

La situazione con un funzionamento lento di 1C non è rara. Puoi sopportarlo oppure puoi ottimizzare le impostazioni di 1C e dell'attrezzatura, il che aumenterà significativamente la velocità del tuo lavoro.

I nostri servizi ti aiuteranno a fare di più durante la tua giornata lavorativa! Sappiamo come accelerare 1C in modo che tu non ripeta mai le parole "1C si blocca".

Perché 1C può bloccarsi o rallentare?

Potrebbero esserci problemi con l'attrezzatura. Mancanza di memoria sul server 1C, funzionamento instabile sulla rete locale, problemi con il disco rigido o le chiavi di sicurezza: tutto ciò può rallentare 1C e renderti nervoso. Inoltre, 1C potrebbe bloccarsi a causa di:

  • scarsa piattaforma e compatibilità di configurazione,
  • errori grossolani dei programmatori 1C alle prime armi,
  • dimensioni della base enormi,
  • un gran numero di utenti.

Anche gli errori durante le normali operazioni con 1C possono portare al suo funzionamento lento.

Come accelerare 1C?

Procediamo così:

  • Controlliamo la conformità delle apparecchiature ai requisiti tecnologici 1C. Potrebbe essere necessario aumentare la RAM, configurare un server 1C, sostituire un disco o controllare la velocità della rete locale. In altre parole, effettuiamo un controllo completo di tutte le attrezzature coinvolte nel processo.
  • Controlliamo le impostazioni di altri servizi coinvolti nel funzionamento di 1C. Ad esempio, un database SQL configurato in modo errato o un accesso terminale inaffidabile possono rallentare notevolmente 1C.
  • Controlliamo la correttezza del codice di configurazione 1C, con il quale ci sono problemi. Non è un segreto che lo stesso problema software possa essere risolto in modi diversi. Il codice non ottimale spesso causa il blocco di 1C.
  • Controlliamo il modello di lavoro dell'utente quando lavora con 1C. A volte gli utenti stessi rallentano 1C e non se ne rendono conto..

Come velocizzare il lavoro in 1C: Contabilità 8.3 (edizione 3.0) o disabilitare le attività di routine e in background

2019-01-15T13:28:19+00:00

Quelli di voi che sono già passati alla nuova edizione di 1C: Accounting 8.3 (edizione 3.0) hanno notato che è diventata più lenta della 2. Alcuni strani rallentamenti, infinite attività in background più volte al giorno, che nessuno le chiedeva di eseguire a nostra insaputa.

I miei commercialisti mi hanno detto subito dopo il passaggio che la nuova edizione di 1C: Contabilità 3.0 è decisamente lenta rispetto alle precedenti! Ed è semplicemente impossibile lavorare.

Ho iniziato a indagare e ben presto ho scoperto che la causa principale dei blocchi e della conseguente insoddisfazione degli utenti sono le attività di routine e in background, molte delle quali sono abilitate per impostazione predefinita, sebbene per la stragrande maggioranza dei contabili non ce ne sia bisogno.

Ebbene, ad esempio, perché dovremmo eseguire l'attività "Estrazione testo" cento volte al giorno se non effettuiamo una ricerca full-text (contabili, non allarmatevi) su tutti gli oggetti del nostro database.

O perché scaricare costantemente i tassi di cambio se non abbiamo transazioni in valuta o le facciamo occasionalmente (e prima possiamo cliccare noi stessi sul pulsante di download dei tassi).

Lo stesso vale per il costante tentativo di 1C di connettersi al sito e controllare e aggiornare i classificatori bancari. Per quello? Io stesso premerò il pulsante per aggiornare i classificatori se non trovo la banca giusta tramite il suo BIC.

Come eseguire questa operazione passo dopo passo di seguito.

1. Vai alla sezione "Amministrazione" e seleziona "Manutenzione" () nel pannello delle azioni:

2. Nella finestra che si apre, trova e seleziona "Attività di routine e in background":

3. Aprire ogni attività che ha "On" nella colonna "On". c'è un daw.

4. Deseleziona "Abilitato" e fai clic sul pulsante "Salva e chiudi".

5. Fallo con ciascuna delle attività incluse e goditi la nuova edizione. Nel complesso, secondo me, è molto meglio di due.

Allo stesso tempo, la piattaforma continuerà ad abilitare alcune delle attività pianificate che hai disabilitato.

Lo scopo principale di scrivere questo articolo è evitare di ripetere sfumature ovvie per quegli amministratori (e programmatori) che non hanno ancora acquisito esperienza con 1C.

L'obiettivo secondario è che, se ho qualche difetto, Infostart sarà il più veloce a segnalarmelo.

Il test di V. Gilev è già diventato una sorta di standard “de facto”. L'autore sul suo sito web ha fornito raccomandazioni abbastanza chiare, ma presenterò semplicemente alcuni risultati e commenterò gli errori più probabili. Naturalmente i risultati dei test sulla vostra attrezzatura potrebbero differire; questa è solo una guida per ciò che dovrebbe essere e ciò a cui potete aspirare. Vorrei sottolineare subito che le modifiche devono essere apportate passo dopo passo e, dopo ogni passaggio, verificare quale risultato ha dato.

Ci sono articoli simili su Infostart, li metterò dei link nelle sezioni pertinenti (se mi manca qualcosa, suggeritemelo nei commenti, lo aggiungerò). Quindi, supponiamo che il tuo 1C sia lento. Come diagnosticare il problema e come capire di chi è la colpa, dell'amministratore o del programmatore?

Dati iniziali:

Computer testato, cavia principale: HP DL180G6, equipaggiato con 2*Xeon 5650, 32 Gb, Intel 362i, Win 2008 r2. Per confronto, il Core i3-2100 mostra risultati comparabili nel test single-thread. L'attrezzatura che ho scelto di proposito non era delle più nuove, con le attrezzature moderne i risultati sono notevolmente migliori.

Per testare server 1C e SQL separati, server SQL: IBM System 3650 x4, 2*Xeon E5-2630, 32 Gb, Intel 350, Win 2008 r2.

Per testare una rete da 10 Gbit sono stati utilizzati adattatori Intel 520-DA2.

Versione del file. (il database è sul server in una cartella condivisa, i client si connettono tramite la rete, protocollo CIFS/SMB). Algoritmo passo dopo passo:

0. Aggiungi il database di test di Gilev al file server nella stessa cartella dei database principali. Ci colleghiamo dal computer client ed eseguiamo il test. Ricordiamo il risultato.

Resta inteso che anche per i vecchi computer di 10 anni fa (Pentium su socket 775 ) il tempo che intercorre tra il clic sul collegamento 1C:Enterprise e la comparsa della finestra del database dovrebbe trascorrere meno di un minuto. ( Celeron = lento).

Se hai un computer peggiore di un Pentium presa 775 con 1 GB di RAM, allora sono solidale con te e sarà difficile per te ottenere un lavoro confortevole su 1C 8.2 nella versione file. Pensa all'aggiornamento (è giunto il momento) o al passaggio a un server terminale (o web, nel caso di thin client e moduli gestiti).

Se il computer non è peggio, puoi cacciare l'amministratore. Come minimo, controllare il funzionamento della rete, dell'antivirus e del driver di protezione HASP.

Se il test di Gilev in questa fase ha mostrato 30 "pappagalli" o più, ma la base di lavoro 1C funziona ancora lentamente, le domande dovrebbero essere rivolte al programmatore.

1. Come guida su quanto un computer client può "spremere", controlliamo il funzionamento solo di questo computer, senza rete. Installiamo il database di test su un computer locale (su un disco molto veloce). Se il computer client non dispone di un normale SSD, viene creato un ramdisk. Per ora, il più semplice e gratuito è Ramdisk enterprise.

Per testare la versione 8.2 è sufficiente un ramdisk da 256 MB, e! Il più importante. Dopo aver riavviato il computer, con il ramdisk in esecuzione, dovrebbero esserci 100-200 MB liberi su di esso. Di conseguenza, senza ramdisk, per il normale funzionamento dovrebbero esserci 300-400 MB di memoria libera.

Per testare la versione 8.3 è sufficiente un ramdisk da 256 MB, ma è necessaria più RAM libera.

Durante il test, è necessario esaminare il carico del processore. In un caso vicino all'ideale (ramdisk), il file locale 1c carica 1 core del processore durante l'esecuzione. Di conseguenza, se durante il test il core del processore non è completamente carico, cerca i punti deboli. Viene descritta un po 'emotiva, ma generalmente corretta, l'influenza del processore sul funzionamento di 1C. Solo per riferimento, anche sui moderni Core i3 con frequenze alte, i numeri 70-80 sono abbastanza realistici.

Gli errori più comuni in questa fase.

a) Antivirus configurato in modo errato. Esistono molti antivirus, le impostazioni per ciascuno sono diverse, dirò solo che con una corretta configurazione né il web né Kaspersky 1C interferiscono. Con le impostazioni predefinite si possono portare via circa 3-5 pappagalli (10-15%).

b) Modalità di prestazione. Per qualche ragione, poche persone prestano attenzione a questo, ma l'effetto è il più significativo. Se hai bisogno di velocità, devi farlo, sia sui computer client che su quelli server. (Gilev ha una buona descrizione. L'unico avvertimento è che su alcune schede madri, se disattivi Intel SpeedStep, non puoi attivare TurboBoost).

In breve, mentre 1C è in esecuzione, c'è molta attesa per una risposta da altri dispositivi (disco, rete, ecc.). Durante l'attesa di una risposta, se la modalità performance è abilitata, il processore abbassa la sua frequenza. Una risposta arriva dal dispositivo, 1C (il processore) deve funzionare, ma i primi cicli di clock hanno una frequenza ridotta, quindi la frequenza aumenta e 1C attende nuovamente una risposta dal dispositivo. E così - molte centinaia di volte al secondo.

Puoi (e preferibilmente) abilitare la modalità performance in due posti:

Tramite BIOS. Disabilita le modalità C1, C1E, Intel C-state (C2, C3, C4). In diverse biografie vengono chiamati diversamente, ma il significato è lo stesso. La ricerca richiede molto tempo, è necessario un riavvio, ma se lo fai una volta, puoi dimenticarlo. Se fai tutto correttamente nel BIOS, la velocità aumenterà. Su alcune schede madri è possibile configurare le impostazioni del BIOS in modo che la modalità prestazioni di Windows non abbia alcun ruolo. (Esempi di impostazioni del BIOS di Gilev). Queste impostazioni riguardano principalmente processori server o BIOS “avanzati”, se non hai trovato questo e NON hai Xeon, va bene.

Pannello di controllo - Alimentazione - Alte prestazioni. Meno: se il computer non viene sottoposto a manutenzione per un lungo periodo, emetterà un rumore della ventola più forte, si scalderà di più e consumerà più energia. Questa è una commissione di performance.

Come verificare che la modalità sia abilitata. Avvia il task manager - prestazioni - monitor risorse - CPU. Aspettiamo finché il processore non è occupato con nulla.

Queste sono le impostazioni predefinite.

Nello stato C del BIOS incluso,

modalità di consumo energetico bilanciato


Nello stato C del BIOS incluso, modalità ad alte prestazioni

Per Pentium e Core puoi fermarti qui,

Puoi ancora spremere dei piccoli "pappagalli" da Xeon


Nello stato C del BIOS spento, modalità ad alte prestazioni.

Se non usi Turbo boost, ecco come dovrebbe apparire

server ottimizzato per le prestazioni


E ora i numeri. Lascia che te lo ricordi: Intel Xeon 5650, ramdisk. Nel primo caso, il test mostra 23.26, nell'ultimo - 49.5. La differenza è quasi duplice. I numeri possono variare, ma il rapporto rimane essenzialmente lo stesso per Intel Core.

Cari amministratori, potete criticare 1C quanto volete, ma se gli utenti finali hanno bisogno di velocità, è necessario abilitare la modalità ad alte prestazioni.

c) Turbo Boost. Per prima cosa devi capire se il tuo processore supporta questa funzione, ad esempio. Se supporta, puoi comunque ottenere legalmente alcune prestazioni. (Non voglio toccare i problemi dell'overclocking della frequenza, in particolare dei server, fallo a tuo rischio e pericolo. Ma sono d'accordo che l'aumento della velocità del bus da 133 a 166 dà un aumento molto notevole sia della velocità che della dissipazione del calore)

Come attivare il turbo boost è scritto, ad esempio, . Ma! Per 1C ci sono alcune sfumature (non le più evidenti). La difficoltà è che l'effetto massimo del turbo boost si verifica quando lo stato C è attivato. E otteniamo qualcosa del genere:

Tieni presente che il moltiplicatore è il massimo, la velocità del core è ottima e le prestazioni sono elevate. Ma cosa accadrà di conseguenza con 1s?

Fattore

Velocità core (frequenza), GHz

Thread singolo CPU-Z

Prova del Ramdisk Gilev

versione del file

Prova del Ramdisk Gilev

client-server

Senza turbo boost

Stato C disattivato, Turbo boost

53.19

40,32

Stato C attivo, Turbo boost

1080

53,13

23,04

Ma alla fine si scopre che secondo i test sulle prestazioni della CPU la versione con un moltiplicatore di 23 è in vantaggio, secondo i test di Gilev nella versione del file le prestazioni con un moltiplicatore di 22 e 23 sono le stesse, ma nella versione client-server versione - la versione con un moltiplicatore di 23 è terribile terribile terribile (anche se C-state è impostato al livello 7, è comunque più lento che con C-state disattivato). Pertanto, la raccomandazione è di verificare personalmente entrambe le opzioni e scegliere quella migliore. In ogni caso, la differenza tra 49,5 e 53 pappagalli è abbastanza significativa, soprattutto senza troppi sforzi.

Conclusione: il turbo boost deve essere attivato. Lascia che ti ricordi che non è sufficiente abilitare la voce Turbo boost nel BIOS, devi anche guardare altre impostazioni (BIOS: QPI L0s, L1 - disabilita, demand scrubbing - disabilita, Intel SpeedStep - abilita, Turbo boost - abilita Pannello di controllo - Opzioni risparmio energia - Alte prestazioni). E sceglierei comunque (anche per la versione del file) l'opzione in cui c-state è disattivato, anche se il moltiplicatore è più piccolo. Verrà fuori qualcosa del genere...

Un punto piuttosto controverso è la frequenza della memoria. Ad esempio, è stato dimostrato che la frequenza della memoria ha un'influenza molto forte. I miei test non hanno rivelato tale dipendenza. Non confronterò DDR 2/3/4, mostrerò i risultati della modifica della frequenza all'interno della stessa riga. La memoria è la stessa, ma nel BIOS siamo costretti ad impostare frequenze più basse.




E i risultati dei test. 1C 8.2.19.83, per la versione file ramdisk locale, per client-server 1C e SQL su un computer, memoria condivisa. Il turbo boost è disabilitato in entrambe le versioni. 8.3 mostra risultati comparabili.

La differenza rientra nell'errore di misurazione. Ho appositamente estratto screenshot di CPU-Z per mostrare che con un cambiamento di frequenza cambiano anche altri parametri, la stessa latenza CAS e il ritardo da RAS a CAS, che neutralizza il cambiamento di frequenza. La differenza si farà quando i moduli di memoria verranno cambiati fisicamente, da più lenti a più veloci, ma anche lì i numeri non sono particolarmente significativi.

2. Dopo aver sistemato il processore e la memoria del computer client, passiamo al successivo luogo molto importante: la rete. Sono stati scritti molti volumi di libri sull'ottimizzazione della rete, ci sono articoli su Infostart (e altri), ma qui non mi concentrerò su questo argomento. Prima di iniziare a testare 1C, assicurati che iperf tra due computer mostri l'intera larghezza di banda (per schede da 1 Gbit - beh, almeno 850 Mbit, o meglio ancora 950-980), che il consiglio di Gilev sia stato seguito. Quindi, il test di funzionamento più semplice sarà, stranamente, la copia di un file di grandi dimensioni (5-10 gigabyte) sulla rete. Un segno indiretto del normale funzionamento su una rete da 1 Gbit sarà la velocità di copia media di 100 MB/sec, un buon funzionamento - 120 MB/sec. Vorrei attirare la vostra attenzione sul fatto che il punto debole (incluso) potrebbe essere il carico del processore. PMI Il protocollo su Linux è piuttosto scarsamente parallelizzato e durante il funzionamento può facilmente "consumare" un core del processore e non consumarne altro.

E inoltre. Con le impostazioni predefinite, il client Windows funziona meglio con un server Windows (o anche una workstation Windows) e il protocollo SMB/CIFS, un client Linux (debian, ubuntu non ha guardato gli altri) funziona meglio con Linux e NFS ( funziona anche con SMB, ma su NFS i pappagalli sono più alti). Il fatto che durante la copia lineare un server Windows Linux su NFS venga copiato più velocemente in un flusso non significa nulla. L'ottimizzazione di Debian per 1C è un argomento per un articolo a parte, non sono ancora pronto, anche se posso dire che nella versione file ho ottenuto prestazioni anche leggermente migliori rispetto alla versione Win sulla stessa attrezzatura, ma con postgres con oltre 50 utenti ho ancora tutto pessimo.

Il più importante , che gli amministratori "bruciati" conoscono, ma i principianti non tengono conto. Esistono molti modi per impostare il percorso del database 1c. Puoi fare \\server\share, puoi fare \\192.168.0.1\share, puoi net use z: \\192.168.0.1\share (e in alcuni casi anche questo metodo funzionerà, ma non sempre) e poi specificare l'unità Z. Sembra che tutti questi percorsi puntino allo stesso posto, ma per 1C esiste solo un modo che fornisce prestazioni normali in modo abbastanza affidabile. Quindi, questo è ciò che devi fare correttamente:

Sulla riga di comando (o nelle policy o qualunque cosa sia conveniente per te): usa net DriveLetter: \\server\share. Esempio: uso netto m: \\server\bases. Sottolineo specificamente NON l'indirizzo IP, vale a dire Nome server. Se il nome del server non è visibile, aggiungilo al DNS sul server o localmente al file host. Ma l'indirizzo deve essere per nome. Di conseguenza, sulla strada per il database, accedi a questo disco (vedi immagine).

E ora mostrerò con i numeri perché questo è il consiglio. Dati iniziali: schede Intel X520-DA2, Intel 362, Intel 350, Realtek 8169. Sistema operativo Win 2008 R2, Win 7, Debian 8. Driver più recenti, aggiornamenti applicati. Prima del test mi sono assicurato che Iperf fornisse l'intera larghezza di banda (a parte le schede da 10 Gbit, è riuscito a spremere solo 7,2 Gbit, vedrò dopo perché, il server di test non è ancora configurato correttamente). I dischi sono diversi, ma ovunque c'è un SSD (ho inserito appositamente un solo disco per testare, non viene caricato con nient'altro) o un raid da un SSD. La velocità di 100 Mbit è stata ottenuta limitando le impostazioni dell'adattatore Intel 362. Non c'era differenza tra Intel 350 in rame da 1 Gbit e Intel X520-DA2 ottico da 1 Gbit (ottenuta limitando la velocità dell'adattatore). Prestazioni massime, il turbo boost è disattivato (solo per comparabilità dei risultati, il turbo boost per buoni risultati aggiunge poco meno del 10%, per cattivi risultati potrebbe non avere alcun effetto). Versioni 1C 8.2.19.86, 8.3.6.2076. Non do tutti i numeri, ma solo quelli più interessanti, così avete qualcosa con cui confrontarvi.

Vinci 2008 - Vinci 2008

contattare tramite indirizzo IP

Vinci 2008 - Vinci 2008

Chiamando per nome

Vinci 2008 - Vinci 2008

Contatto tramite indirizzo IP

Vinci 2008 - Vinci 2008

Chiamando per nome

Vinci 2008 - Vinci 7

Chiamando per nome

Vinci 2008 - Debian

Chiamando per nome

Vinci 2008 - Vinci 2008

Contatto tramite indirizzo IP

Vinci 2008 - Vinci 2008

Chiamando per nome

11,20 26,18 15,20 43,86 40,65 37,04 16,23 44,64
1C8.2 11,29 26,18 15,29 43,10 40,65 36,76 15,11 44,10
8.2.19.83 12,15 25,77 15,15 43,10 14,97 42,74
6,13 34,25 14,98 43,10 39,37 37,59 15,53 42,74
1C8.3 6,61 33,33 15,58 43,86 40,00 37,88 16,23 42,74
8.3.6.2076 33,78 15,53 43,48 39,37 37,59 42,74

Conclusioni (dalla tabella e dall'esperienza personale. Vale solo per la versione file):

Sulla rete, puoi ottenere numeri di lavoro abbastanza normali se questa rete è configurata correttamente e il percorso è inserito correttamente in 1C. Anche il primo Core i3 può facilmente produrre più di 40 pappagalli, il che è abbastanza buono, e questi non sono solo pappagalli, anche nel lavoro reale la differenza è evidente. Ma! La limitazione quando si lavora con più utenti (più di 10) non sarà più la rete, qui 1 Gbit è ancora sufficiente, ma il blocco durante il lavoro multiutente (Gilev).

La piattaforma 1C 8.3 è molte volte più esigente in termini di corretta configurazione della rete. Impostazioni di base: vedi Gilev, ma tieni presente che tutto può essere influenzato. Ho notato un'accelerazione dalla disinstallazione (e non solo dallo spegnimento) dell'antivirus, dalla rimozione di protocolli come FCoE, dal cambio di driver con una versione più vecchia ma certificata Microsoft (soprattutto per schede economiche come ASUS e DLC), dalla rimozione della seconda scheda di rete dal server. Ci sono molte opzioni, configura attentamente la tua rete. Potrebbe esserci una situazione in cui la piattaforma 8.2 fornisce numeri accettabili e 8.3 - due o anche più volte meno. Prova a giocare con la versione 8.3 della piattaforma, a volte ottieni un effetto molto grande.

1C 8.3.6.2076 (forse più tardi, non ho ancora cercato la versione esatta) è ancora più semplice da configurare in rete rispetto a 8.3.7.2008. Sono riuscito a ottenere il funzionamento normale sulla rete dall'8.3.7.2008 (in pappagalli comparabili) solo poche volte; non potrei ripeterlo per un caso più generale. Non ho capito molto, ma a giudicare dai foot wrap di Process Explorer, la registrazione non è buona come nella versione 8.3.6.

Nonostante il fatto che quando si lavora su una rete da 100 Mbit, il suo programma di carico è ridotto (si può dire che la rete è gratuita), la velocità operativa è ancora molto inferiore rispetto a 1 Gbit. Il motivo è la latenza della rete.

A parità di altre condizioni (una rete ben funzionante) per 1C 8.2 la connessione Intel-Realtek è del 10% più lenta di Intel-Intel. Ma realtek-realtek può generalmente dare un brusco cedimento all'improvviso. Pertanto, se hai soldi, è meglio tenere le schede di rete Intel ovunque, se non hai soldi, installa Intel solo sul server (il tuo CO). E ci sono molte più istruzioni per l'ottimizzazione delle schede di rete Intel.

Le impostazioni antivirus predefinite (utilizzando come esempio la versione 10 di drweb) occupano circa l'8-10% dei pappagalli. Se lo configuri come dovrebbe (permetti al processo 1cv8 di fare tutto, anche se non è sicuro), la velocità è la stessa che senza antivirus.

NON leggere i guru di Linux. Un server con Samba è fantastico e gratuito, ma se installi Win XP o Win7 (o meglio ancora, il sistema operativo del server) sul server, la versione del file 1c funzionerà più velocemente. Sì, samba, lo stack di protocolli, le impostazioni di rete e molto, molto altro ancora possono essere ben ottimizzati in Debian/Ubuntu, ma questo è consigliato agli specialisti. Non ha senso installare Linux con le impostazioni predefinite e poi dire che è lento.

È una buona idea verificare il funzionamento dei dischi connessi tramite net use utilizzando fio . Almeno sarà chiaro se si tratta di problemi con la piattaforma 1C, oppure con la rete/disco.

Per la versione monoutente non riesco a pensare a test (o situazioni) in cui la differenza tra 1 Gbit e 10 Gbit sarebbe visibile. L'unica cosa in cui 10 Gbit per la versione file ha dato risultati migliori è la connessione dei dischi tramite iSCSI, ma questo è un argomento per un articolo separato. Tuttavia, penso che per la versione file siano sufficienti schede da 1 Gbit.

Non capisco perché, con una rete a 100 Mbit, 8.3 funzioni notevolmente più velocemente di 8.2, ma era un dato di fatto. Tutte le altre apparecchiature, tutte le altre impostazioni sono assolutamente le stesse, è solo che in un caso viene testato 8.2 e nell'altro - 8.3.

NFS win-win o win-lin non sintonizzato dà 6 pappagalli, non li ho inclusi nella tabella. Dopo l'accordatura ne ho ottenuti 25, ma era instabile (la differenza nelle misurazioni era di più di 2 unità). Non posso ancora dare consigli sull'utilizzo di Windows e del protocollo NFS.

Dopo tutte le impostazioni e i controlli, eseguiamo nuovamente il test dal computer client e ci rallegriamo del risultato migliorato (se funziona). Se il risultato è migliorato, ci sono più di 30 pappagalli (e soprattutto più di 40), meno di 10 utenti lavorano contemporaneamente e il database di lavoro è ancora lento - quasi sicuramente un problema del programmatore (o hai ha già raggiunto le capacità massime della versione del file).

Server terminale. (il database è sul server, i client si connettono tramite la rete, protocollo RDP). Algoritmo passo dopo passo:

0. Aggiungi il database di test di Gilev al server nella stessa cartella dei database principali. Ci colleghiamo dallo stesso server ed eseguiamo il test. Ricordiamo il risultato.

1. Allo stesso modo della versione file, impostiamo il lavoro. Nel caso di un terminal server il processore svolge generalmente il ruolo principale (si presuppone che non vi siano punti deboli evidenti, come mancanza di memoria o un'enorme quantità di software non necessario).

2. La configurazione delle schede di rete nel caso di un terminal server non ha praticamente alcun effetto sul funzionamento di 1c. Per garantire un comfort “speciale”, se il tuo server produce più di 50 pappagalli, puoi giocare con le nuove versioni del protocollo RDP, proprio per il comfort degli utenti, risposta e scorrimento più rapidi.

3. Se un gran numero di utenti lavora attivamente (e qui puoi già provare a connettere 30 persone a un database, se ci provi), è molto consigliabile installare un'unità SSD. Per qualche motivo si ritiene che il disco non influenzi particolarmente il funzionamento di 1C, ma tutti i test vengono eseguiti con la cache del controller abilitata alla scrittura, il che non è corretto. La base di test è piccola, si adatta abbastanza bene alla cache, da qui i numeri elevati. Sui database reali (di grandi dimensioni) tutto sarà completamente diverso, quindi la cache è disabilitata per i test.

Ad esempio, ho verificato il funzionamento del test Gilev con diverse opzioni del disco. Ho installato i dischi da ciò che avevo a portata di mano, solo per mostrare la tendenza. La differenza tra 8.3.6.2076 e 8.3.7.2008 è piccola (nella versione Ramdisk Turbo boost 8.3.6 produce 56.18 e 8.3.7.2008 produce 55.56, in altri test la differenza è ancora più piccola). Consumo energetico: prestazioni massime, turbo boost disabilitato (se non diversamente indicato).

Raid 10 4xSATA 7200

ATA ST31500341AS

Raid 10 4x SAS 10k

Raid 10 4x SAS 15k

SSD singolo

Ramdisk

Cache abilitata

Controller RAID

21,74 28,09 32,47 49,02 50,51 53,76 49,02
1C8.2 21,65 28,57 32,05 48,54 49,02 53,19
8.2.19.83 21,65 28,41 31,45 48,54 49,50 53,19
33,33 42,74 45,05 51,55 52,08 55,56 51,55
1C8.3 33,46 42,02 45,05 51,02 52,08 54,95
8.3.7.2008 35,46 43,01 44,64 51,55 52,08 56,18

La cache del controller RAID abilitata elimina tutte le differenze tra i dischi; i numeri sono gli stessi sia per sat che per cas. Testarlo su una piccola quantità di dati è inutile e non è indicativo di alcun tipo.

Per la piattaforma 8.2, la differenza di prestazioni tra le opzioni SATA e SSD è più che doppia. Questo non è un errore di battitura. Se guardi il monitor delle prestazioni durante il test sulle unità SATA. quindi puoi vedere chiaramente "Tempo di funzionamento del disco attivo (in%)" 80-95. Sì, se abiliti la cache dei dischi stessi per la registrazione, la velocità aumenterà a 35, se abiliti la cache del controller raid - fino a 49 (indipendentemente da quali dischi vengono testati al momento). Ma questi sono pappagalli della cache sintetica; nel lavoro reale, con database di grandi dimensioni, non ci sarà mai un tasso di riscontro della cache in scrittura del 100%.

La velocità anche degli SSD economici (che ho testato su Agility 3) è sufficiente per eseguire la versione del file. La risorsa di registrazione è un'altra questione, bisogna guardarla in ogni caso specifico, è chiaro che l'Intel 3700 ne avrà un ordine di grandezza superiore, ma il prezzo è corrispondente. E sì, capisco che quando testo un disco SSD, provo anche la cache di questo disco in misura maggiore, i risultati reali saranno inferiori.

La soluzione più corretta (dal mio punto di vista) sarebbe quella di allocare 2 dischi SSD in un raid con mirroring per un database di file (o più database di file) e non inserire nient'altro lì. Sì, con uno specchio, gli SSD si consumano allo stesso modo, e questo è un aspetto negativo, ma almeno l'elettronica del controller è in qualche modo protetta dagli errori.

I principali vantaggi delle unità SSD per la versione file si manifesteranno quando sono presenti molti database, ciascuno con più utenti. Se sono presenti 1-2 database e circa 10 utenti, i dischi SAS saranno sufficienti. (ma in ogni caso, guarda a caricare questi dischi, almeno tramite perfmon).

I principali vantaggi di un terminal server sono che può avere client molto deboli e le impostazioni di rete influiscono molto meno sul terminal server (di nuovo, il tuo K.O.).

Conclusioni: se si esegue il test Gilev su un terminal server (dallo stesso disco su cui si trovano i database di lavoro) e in quei momenti in cui il database di lavoro rallenta e il test Gilev mostra un buon risultato (superiore a 30), allora il Molto probabilmente la colpa del lento funzionamento del database di lavoro principale è un programmatore.

Se il test di Gilev mostra numeri piccoli e hai un processore con clock elevato e dischi veloci, l'amministratore deve prendere almeno perfmon, registrare tutti i risultati da qualche parte e guardare, osservare e trarre conclusioni. Non ci sarà alcun consiglio definitivo.

Opzione client-server.

I test sono stati effettuati solo su 8.2, perché sulla 8.3 tutto dipende abbastanza seriamente dalla versione.

Per i test, ho scelto diverse opzioni di server e reti tra loro per mostrare le tendenze principali.

SQL: Xeon E5-2630

SQL: Xeon E5-2630

Canale in fibra - SSD

SQL: Xeon E5-2630

Canale in fibra - SAS

SQL: Xeon E5-2630

SSD locale

SQL: Xeon E5-2630

Canale in fibra - SSD

SQL: Xeon E5-2630

SSD locale

1C: Xeon 5650 =

1C: Xeon 5650 =

Memoria condivisa

1C: Xeon 5650 =

1C: Xeon 5650 =

1C: Xeon 5650 =

16,78 18,23 16,84 28,57 27,78 32,05 34,72 36,50 23,26 40,65 39.37
1C8.2 17,12 17,06 14,53 29,41 28,41 31,45 34,97 36,23 23,81 40,32 39.06
16,72 16,89 13,44 29,76 28,57 32,05 34,97 36,23 23,26 40,32 39.06

Sembra che abbia considerato tutte le opzioni interessanti, se c'è qualcos'altro che ti interessa, scrivi nei commenti, proverò a farlo.

SAS sui sistemi di archiviazione è più lento degli SSD locali, anche se i sistemi di archiviazione hanno dimensioni della cache maggiori. Gli SSD, sia locali che su sistemi di archiviazione, funzionano a velocità comparabili per il test di Gilev. Non conosco alcun test multi-thread standard (non solo la registrazione, ma tutte le apparecchiature) ad eccezione del test di carico 1C dell'MCC.

La modifica del server 1C da 5520 a 5650 ha quasi raddoppiato le prestazioni. Sì, le configurazioni dei server non corrispondono completamente, ma mostrano una tendenza (nessuna sorpresa).

Aumentare la frequenza sul server SQL ha sicuramente un effetto, ma non è lo stesso del server 1C; il server MS SQL è eccellente (se lo chiedi) per utilizzare multi-core e memoria libera.

Cambiare la rete tra 1C e SQL da 1 Gbit a 10 Gbit dà circa il 10% di pappagalli. Mi aspettavo di più.

Abilitare la memoria condivisa dà comunque un effetto, anche se non del 15%, come descritto. Assicurati di farlo, fortunatamente è facile e veloce. Se durante l'installazione qualcuno ha fornito al server SQL un'istanza denominata, affinché 1C funzioni, il nome del server deve essere specificato non tramite FQDN (tcp/ip funzionerà), non tramite localhost o solo ServerName, ma tramite ServerName\InstanceName, ad esempio zz-prova\zzprova. (In caso contrario si verificherà un errore DBMS: Microsoft SQL Server Native Client 10.0: Provider di memoria condivisa: la libreria di memoria condivisa utilizzata per stabilire una connessione con SQL Server 2000 non è stata trovata. HRESULT=80004005, HRESULT=80004005, HRESULT=80004005, SQLSrvr : SQLSTATE=08001, stato=1, gravità=10, nativo=126, riga=0).

Per meno di 100 utenti, l'unico punto nel dividerlo in due server separati è una licenza Win 2008 Std (e precedenti), che supporta solo 32 GB di RAM. In tutti gli altri casi, 1C e SQL devono assolutamente essere installati su un server e avere più memoria (almeno 64 GB). Dare a MS SQL meno di 24-28 GB di RAM è un'avidità ingiustificata (se pensi di avere memoria sufficiente e tutto funziona bene, forse la versione del file 1C ti basterebbe?)

Quanto peggiora la combinazione di 1C e SQL in una macchina virtuale è l'argomento di un articolo separato (suggerimento: notevolmente peggiore). Anche in Hyper-V non è tutto così chiaro...

La modalità prestazioni bilanciate è pessima. I risultati sono abbastanza coerenti con la versione del file.

Molte fonti affermano che la modalità di debug (ragent.exe -debug) provoca un calo significativo delle prestazioni. Beh, si riduce, sì, ma non definirei il 2-3% un effetto significativo.