BG Development


Страници: (16) [1] 2 3 ... последна »

bishkot Публикувана на: 10-01-2022, 21:10

Мнения: 6
Преглеждания: 568
За сега "настъкмих" нещата като на всяка секунда-две чета директорията и съхранявам file paths в масив. Всяко съобщение от websocket-a проверява в този масив вместо да се чете директорията на всяко съобщение т.е. по 500 пътви в секунда и т.н.

За мен решението отново е временно но за момента е ок.

За напред се вижда да се ползва БД , някак си искам да е mysql с един XAMP - тъй като никога не съм се занимавал с mondoDB.

Благодаря за насоките guys!
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #493432

bishkot Публикувана на: 10-01-2022, 16:19

Мнения: 6
Преглеждания: 568
Искам да реагирам максимално бързо при намерен файл. Т.е. когато определено съобщение от websocket-a отговаря на критерия....ще извършвам други операции....това най общо казано.

До сега съм се занимавал с php mysql. Mysql подходящ ли е за nodejs.
Четох че се препоръчва MongoDB.

Дефакто вмсето да се търси името на файла измежду хиляди файлове отново ще имаме много на брой заявки от рода на "Select * from table where filename=filename_from_WS"

Това ще подобри ли производителността/бързината ?

Това с файловете остана отпреди тъй като не предполагах че нещата ще нараснат....

Мерси за насоката!
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #493428

bishkot Публикувана на: 10-01-2022, 15:55

Мнения: 6
Преглеждания: 568
Здравейте!

Става въпрос за websocket.

Примерно
CODE

websocket.on('message', data => {
...
...

var filename=data.filename;

}







Имам директория да речем DATA.
Броят на файловете в тази директория се предполага да расте.... в момена има около 200-300 TXT файла.
От websocket-а на моменти се получават доста много на брой съобщения за единица време.
Т.е. "екстремно" натоварване - не винаги, но се случва. За всяко съобщение от websocket-a (примерно име на файл) трябва да да се търси измежду тези 200-300 файла а и те ще растат за напред.....

Например за секунда от websocket-a се получават 500 имена на файлове. Всяко едно име се търси измежду 200-300 файла от DATA директорията.

Пробвах да търся файал по тези два начина - струва ми се че разлика няма.... смучи процесора на 60% а и паметта на NodeJs хвърчи докато не вземе да крашва освен ако не го рестартирам.

Използвам
CODE

-max-memory-restart 1000M

за целта.

CODE
 function user_order_exist_OLD(filename)
{
      const files = recursive('./DATA');
      for(i=0;i<=order_files.length-1;i++)
            {
            var current_path=files[i];

            var pathparts=files[i].split(''+'\\');
            var found_filename=pathparts[5];
           if (found_filename==filename+'.TXT')
                  {
                  
                  existing_file_path=current_path;return (existing_file_path);
                  }
            
            } return '0';
}
 


и
CODE

function user_order_exist_NEW(filename)
{
      const files = recursive('./DATA');
      const found = files.filter(item => item.toLowerCase().indexOf(filename) > -1);

      if (found.length==1){var existing_file_path= found[0]; return (existing_file_path);}
      else {return '0';}
}



Би ли било по добре имената на файловете да се съхраняват във база данни от гледна точка на бързината и натоварването или как биха се оптимизирали нещата?

Ако все пак подхода не е грешен може би просто си трябва по мощна машина с повече RAM и добро CPU?

Иначе това си е нормално PC с i3 8 RAM i SSD под Win 10 64 Bit.

Благодаря
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #493426

bishkot Публикувана на: 19-11-2021, 11:31

Мнения: 4
Преглеждания: 734
@thrawn , да прав си

имам предвид
CODE
music('тук',id)



@relax4o мерси ще пробвам

Тенкю гайс
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #492732

bishkot Публикувана на: 18-11-2021, 23:59

Мнения: 4
Преглеждания: 734
Имам
CODE

 function music(command,id) {

      
      
authedClient.command(id, (error, data) => {
...

....



Искам примерно
CODE


music('play',5);

или
CODE

music ('pause',10)



т.е. в зависимост от какво подавам на music('тук')

да се изпълнява

CODE


authedClient.play('5');
authedClient.play('7');
authedClient.pause('8');
authedClient.pause('9');
...
...  и т.н.



Дано успявам да обясня какво целя
icon_eek.gif
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #492717

bishkot Публикувана на: 23-02-2021, 09:29

Мнения: 17
Преглеждания: 6224
Благодаря
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490908

bishkot Публикувана на: 23-02-2021, 01:39

Мнения: 17
Преглеждания: 6224
Ясно, значи трябва като цяло да регистрирам домейн който да се хоства от машината където е сървъра и там да въведа сертификата а не този на домейна където е клиента
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490905

bishkot Публикувана на: 23-02-2021, 01:09

Мнения: 17
Преглеждания: 6224
забравих да кажа че, ddns отпадна т.е. имам client.html на споделен хостинг и nodejs server-a e remote
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490903

bishkot Публикувана на: 22-02-2021, 23:59

Мнения: 17
Преглеждания: 6224
За да не отварям нова тема.... при мен websocket-a през https така и не тръгна.

Добавих cert и key от хостинга където е клиента.

В момента

client1.php
CODE

<script type="text/javascript">
      let socket = new WebSocket("ws://my.ip.address:8010");
      socket.onopen = function(e) {
      socket.send("this is my message");
      };

      socket.onmessage = function(event) {
      };

      socket.onclose = function(event) {
        if (event.wasClean) {
     //....
                    
        } else {
     //...
        }
      };
      socket.onerror = function(event) {
   //...
      };
</script>


nodejs server1
CODE

const WebSocket = require('ws');
const ws = new WebSocket.Server({ port: '8010' ,host:'0.0.0.0',origins:'*', });

ws.on('connection', function connection(ws,request,client) {

ws.on('message', function message(message) {
console.log('Message: '+message)
});
});

ws.on('error', err => {
        /* handle error */
      });
      ws.on('close', (data) => {
          console.log('WS closed' );
      
      });



работи през http

пробвах следното

nodejs server2
CODE

const fs = require('fs');
const https = require('https');
const WebSocket = require('ws');

const server = https.createServer({
cert: fs.readFileSync('1.pem'),
key: fs.readFileSync('1.pem'),

});
const wss = new WebSocket.Server({ server });
wss.on('connection', function connection(ws) {
ws.on('message', function incoming(message) {
  console.log('received: %s', message);
});

ws.send('something');
});

server.listen(8010);


така и не работи, пробвах с и без web server´xampp провах също и порт 433

Идеи?
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490902

bishkot Публикувана на: 22-02-2021, 15:00

Мнения: 3
Преглеждания: 2595
ще си отговоря сам но

RewriteCond %{REQUEST_URI} !=/my_page

не работеше, затова и пуснах темата, оказа се че се е кеширал стария htaccess

След изтриване на кеша проработи
  Форум: PHP/Perl/Python/ASP  ·  Преглед: #490899

bishkot Публикувана на: 22-02-2021, 14:48

Мнения: 3
Преглеждания: 2595
Здравейте


имам

.htaccess
CODE

Options +FollowSymLinks
RewriteEngine on

RewriteBase /

RewriteCond %{HTTPS} !on
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]



който има за цел следното: Независимо как въвеждаме адреса - с http или с https то винаги да се зарежда страницата с https.

Всичко ок обаче как да изключа 1 адрес/страница от всичко това т.е. искам следното

Всичко от горния htaccess, но замо ако %{REQUEST_URI} = my_page то да става точно обратното.

Напримет ако независимо с http ili https зареся http://mydomain.com/my_page.html то винаги да зарежда БЕЗ https a винаги с http

Всичко -> https
Samo my_page-> винаги http

Благодаря
  Форум: PHP/Perl/Python/ASP  ·  Преглед: #490898

bishkot Публикувана на: 22-02-2021, 14:47

Мнения: 0
Преглеждания: 1807
EDIT

Сори дублирана тема.
Моля едната да бъде изтрита

Здравейте


имам

.htaccess
CODE

Options +FollowSymLinks
RewriteEngine on

RewriteBase /

RewriteCond %{HTTPS} !on
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]



който има за цел следното: Независимо как въвеждаме адреса - с http или с https то винаги да се зарежда страницата с https.

Всичко ок обаче как да изключа 1 адрес/страница от всичко това т.е. искам следното

Всичко от горния htaccess, но замо ако %{REQUEST_URI} = my_page то да става точно обратното.

Напримет ако независимо с http ili https зареся http://mydomain.com/my_page.html то винаги да зарежда БЕЗ https a винаги с http

Всичко -> https
Samo my_page-> винаги http

Благодаря
  Форум: PHP/Perl/Python/ASP  ·  Преглед: #490897

bishkot Публикувана на: 08-02-2021, 16:10

Мнения: 17
Преглеждания: 6224
Искам клеинта да е браузъра да речем Chrome, да изпратя съобщение до nodejs сървъра като на машината където е nodejs сървъра съм разрешил съответния порт, пренасочил съм порта от рутера към съответната машина където е сървъра.

Тъй като IP-то ми се сменя от време на време, ту е реално ту не е използвам ddns.net като настройките са зададени в рутера.

До момента нещата работят през http но не и през https.

На domain1 където е client.html имам SSL сертификат и искам да осъществя връзката с https
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490812

bishkot Публикувана на: 08-02-2021, 13:24

Мнения: 17
Преглеждания: 6224
По този начин би ли работило през https .
В случая кой SSL сертификат е нужно да се ползва на domain1 или на domain2 в nodejs сървъра

user posted image

Благодаря
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490809

bishkot Публикувана на: 08-02-2021, 09:51

Мнения: 17
Преглеждания: 6224
client.html
CODE
      let socket = new WebSocket("wss://domain.net:5000");

      socket.onopen = function(e) {
        alert("[open] Connection established");
        alert("Sending to server");
        socket.send("My name is John");
      };

      socket.onmessage = function(event) {
        alert(`[message] Data received from server: ${event.data}`);
      };

      socket.onclose = function(event) {
        if (event.wasClean) {
          alert(`[close] Connection closed cleanly, code=${event.code} reason=${event.reason}`);
        } else {
          // e.g. server process killed or network down
          // event.code is usually 1006 in this case
          alert('[close] Connection died');
        }
      };

      socket.onerror = function(error) {
        alert(`[error] ${error.message}`);
      };
      


Server

CODE

const fs = require('fs');
const https = require('https');
const WebSocket = require('ws');

const server = https.createServer({
 cert: fs.readFileSync('1.pem'),
 key: fs.readFileSync('1.pem'),

});
const wss = new WebSocket.Server({ server });


wss.on('connection', function connection(ws) {
      console.log('adsd');
 ws.on('message', function incoming(message) {
   console.log('received: %s', message);
 });

 ws.send('something');
});

server.listen(5000);


Дава алерт "[error] undefined"
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490808

bishkot Публикувана на: 07-02-2021, 23:24

Мнения: 17
Преглеждания: 6224
-----BEGIN CERTIFICATE REQUEST-----

това

-----BEGIN PRIVATE KEY-----

и това

?

В клиента или сървъра? Сори ако ръся бисери
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490805

bishkot Публикувана на: 07-02-2021, 20:27

Мнения: 17
Преглеждания: 6224
До колкото разбирам става дума за следното
CODE
const server = https.createServer({
 cert: fs.readFileSync('/path/to/cert.pem'),
 key: fs.readFileSync('/path/to/key.pem')
});
const wss = new WebSocket.Server({ server });


но къде да намяря cert.pem и key.pem

Имам ги само под формата на дълъг стринг..... - споделен хостинг
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490803

bishkot Публикувана на: 07-02-2021, 18:52

Мнения: 17
Преглеждания: 6224
Здраейте, изпращам съобщение от клиента до сървъра по този начин.

client.html
CODE

function execute_orders()
{

      let socket = new WebSocket("ws://cryptobot.ddns.net:8010");

      socket.onopen = function(e) {
            
            
            
            
        alert("[open] Connection established");
        alert("Sending to server");  
        socket.send("Hi , this is my message");
      };

      socket.onmessage = function(event) {
        alert(`[message] Data received from server: ${event.data}`);
      };

      socket.onclose = function(event) {
        if (event.wasClean) {
                  $("#execute_orders_response").html('Connection closed cleanly');
                    
          alert(`[close] Connection closed cleanly, code=${event.code} reason=${event.reason}`);
        } else {

          alert('[close] Connection died');
        }
      };

      socket.onerror = function(error) {
        //alert(`[error] ${error.message}`);
      };
      socket.onerror = function(event) {
              console.error("WebSocket error observed:", event);
            };
            
      
}



nodejs server
CODE


const WebSocket = require('ws');
const fs = require('fs');
const ws = new WebSocket.Server({ port: '8010' ,host:'0.0.0.0'});


 ws.on('connection', function connection(ws,request,client) {
      
  ws.on('message', function message(message) {
      
  console.log(message);
 
 
});

});




През http://domain.com/cliend.html всичко работи но не и през https.
Пробвах също с wss

За насоки ще бъда благодарен.
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490799

bishkot Публикувана на: 26-12-2020, 17:02

Мнения: 5
Преглеждания: 4215
Благодаря за отговора!

Рзрешил съм firewol-а. момента нещата работят след основния ми рутер.
Имам рутер 1 на wan порта на който идва кабела от ISP.
След рутер 1 имам още 2 рутера и т.н.

PC1 е вързан за лан порта на рутер1.
От всеки един PC вързана било то за рутер1 или рутер 2 се свързвам безпроблемно по ип-то на wan port-a на рутер1.

Това което установих обаче е че примерно комшията ако приемем че е на друг ISP и съвсем друга мрежа - той не може да се свърже.

Установих също че WAN IP-адресът на рутер е различен от моят Public IP. (четох че от там може да идва проблемът..... налага е реално, статично IP от ISP или VPN услуга)

Да разбирам ли че няма как да се случи това for free т.е. без реален(статичен) IP или VPN? Или къде другаде да търся проблема.
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490492

bishkot Публикувана на: 24-12-2020, 22:48

Мнения: 5
Преглеждания: 4215
Здравейте , опитвам се от PC1 да се свържа с PC2 чрез websocket и двете PC-та не са в една мрежа.

CODE

//client
const WebSocket = require('ws');
const ws = new WebSocket('ws://MyPublicIP:8080');
ws.on('open', function open() {
 ws.send('something');
});

ws.on('message', function incoming(data) {
 console.log(data);
});


CODE

//server
const WebSocket = require('ws');

const wss = new WebSocket.Server({ port: 8080 });

wss.on('connection', function connection(ws) {
 ws.on('message', function incoming(message) {
   console.log('received: %s', message);
 });

 ws.send('something');
});


дава грешка

CODE

errno: -4039,
 code: 'ETIMEDOUT',
 syscall: 'connect',
 address: 'моето ип',
 port: 8080


Добавих port forwarding в рутера и съответно inbound rule във firewall-a

Мнения? Другият ми въпрос е до колко по този начин би било съответното PC под заплаха за сугурността (провив, хакери и темподобни) с отворен порт и разрещен порт във firewall

Благодря
Мнения?
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490490

bishkot Публикувана на: 20-12-2020, 10:41

Мнения: 4
Преглеждания: 2271
Мисля че разбрах и много благодаря!
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490479

bishkot Публикувана на: 20-12-2020, 01:21

Мнения: 4
Преглеждания: 2271
ами искам сорс кода да е невъзможен за четене. т.е. модифициране и.т.н

да речем че създам nodejs app илу software да го наречем и го продам на г-н Х.

Този г-н Х може да види, прочете, копира и модифицира кода и софтуера и да го предостави на г-н Y,Z,....и т.н.

То тогава защо да ми плащат?

Да речем, че просто искам да предоставя нещо което работи на някого, но само аз да знам сорс кода , логиката , алгоритъма, аз да имам авторските права и т.н.

Например продсвам правото на пилзване на този софтуер/nodejs app на г-н Х. Той си го ползва, без да има право да вижда сорс кода или да го предоставя на 3ти лица, плаща си за това и е съглсен на всичко това.
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490477

bishkot Публикувана на: 20-12-2020, 00:17

Мнения: 4
Преглеждания: 2271
Здравейте, интересувам се как най добре бихте защитили сорс кода на NodeJs app.

Разгледах bytenode и като цяло изглежда доста удобно.

Изпробвах малък тест да пробвам.
от app.js получавам app.jsc и всичко работи както би трябвало.

Ето примерът ТУК
app.js разбира се липсва.
app_b.jsc е резултатът на bytenode от app.js

app_b.bat стартира app_b.js който пък стартира компилираният app_b.jsc от app.js (app js умишлено липсва в архива за да си дойдем на темата)

Като цяло виждаме един елементарен ред текст
David knows that 5+3=8 нищо сложно или пък интересно но за целите на теста

Та...... в този ред на мисли имам няколко въпроса.

1. Струва ли си да се ползва bytenode за защита на сорс кода на nodejs (js) source code ?

2. Има ли начин от app_b.jsc да се разбере сорс кода на app.js (който умишлено го няма в архива) и ако да как, някой от компетентните ако може да ми покаже сорс кода поне ще разбера че отговорът на въпрос 1 е твърдо НЕ.

3. Какъв според вас би бил най добрия начин за защита на node js app. Разгледал съм няколко вариянта express, BoxedApp Packer, , Quick Batch File Compiler и т.н., какво мислите вие?


Надявам се успявам да обясня какво точно питам.

Благодаря! Поздрави и весели празници!
  Форум: HTML/CSS/JavaScript/VBScript  ·  Преглед: #490475

bishkot Публикувана на: 29-07-2016, 08:56

Мнения: 8
Преглеждания: 832
@uphero , благодаря
CODE
$json->rows[0]->elements[0]->distance->value
е решението
  Форум: PHP/Perl/Python/ASP  ·  Преглед: #393259

bishkot Публикувана на: 28-07-2016, 18:14

Мнения: 8
Преглеждания: 832
Значи имам следния json
CODE
$contents='{
  "destination_addresses" : [ "Unnamed Road, 8240 Nessebur, Bulgaria" ],
  "origin_addresses" : [ "Unnamed Road, 8240 Burgas, Bulgaria" ],
  "rows" : [
     {
        "elements" : [
           {
              "distance" : {
                 "text" : "2.7 km",
                 "value" : 2681
              },
              "duration" : {
                 "text" : "7 mins",
                 "value" : 429
              },
              "status" : "OK"
           }
        ]
     }
  ],
  "status" : "OK"
}';


Искам да получа стойността distance->value което е 2681 в $distance

Пробвах $json=json_decode($contents);
$distance=$json->rows->elements->distance->value;
....
....
$distance=$json[elements][distance][value];
..
..
и още няколко вариянта но не знам за
о не се получава..
  Форум: PHP/Perl/Python/ASP  ·  Преглед: #393237

Страници: (16) [1] 2 3 ... последна »
New Posts  Отворена тема (има нови мнения)
No New Posts  Отворена тема (няма нови мнения)
Hot topic  Гореща тема (има нови мнения)
No new  Гореща тема (няма нови мнения)
Poll  Анкета (има нови гласували)
No new votes  Анкета (няма нови гласували)
Closed  Заключена тема
Moved  Преместена тема

Copyright © 2003-2019 | BG Development | All Rights Reserved
RSS 2.0