지속적으로 고도몰에서 SFTP 접속이 안되는 현상이 벌어졌다. 이 부분 때문에 굉장히 많은 시간을 허비하며 많은 시도들을 해보았는데 아래와 같다.

 

1. 프로토콜 지정하기

고도몰에서는 프로토콜이 지정되야만 접속가능한 시퀀스를 만들어놨다. 물론 이건 고도몰+ 이상부터 한정된다. 

sftp:// 와 같이 지정하는 부분인데 이 부분이 굉장히 중요하다.

 

2. 포트를 지정해야한다

포트를 다른 글에서는 21번 22번을 쓴다는 경우도 있었으나, 고도몰 Pro+ 에서는 지정된 포트가 따로 있다.

 

이 부분을 참고하려면 관리자 페이지가 아니라 NHN Commerce 페이지로 들어가서 찾아줘야한다

(한참을 찾아 해맸다.)

이렇게 되어있으니까, 이러한 부분을 참조해서 VSCode 에서는 Protocol 을 지정해서 넣어주고

파일질라에서는 Protocol 을 포함한 주소를 넣어준다

 


그럼에도 불구하고 나처럼 안되는 매우 빡치는 케이스가 있는데 여러 문의 결과

고도몰 Pro+ 에서는 클라우드 기반에다가 IP 기반의 ACL 을 처리해주지 않으면 작동하지 않는 것으로 판단된다.

 

 

아래처럼 요로코롬 아이피 상콤하게 등록해서 ACL 컨트롤링을 해줘야 SFTP에 들어갈 수 있는 매우 재미있는 구조를 개설해두셨다.

 

 

그리고나서 휴면회원에 대한걸 처리를 해야하는데... 휴면회원이 무려 47만명 이였다.

특히 휴면 회원중에 예치금과 마일리지를 가지고 있는 경우가 있는데, 이 때에는 전체 삭제가 안된다.

 

그렇다면 무슨 말이다? 이 부분에 대해서 별도로 코딩을 해줘야 한다는 이야기다

 


일단 고도몰에서 지원하는 원본소스에 수정을 가한후 타격을 가할 수 있게 해서 삭제 프로세스에 성공하긴 하였으나, PHP 기반에서 js 랑 통신할 때의 timeout 시간이 어느정도 있기 때문에 47만명을 한번에 삭제할 순 없다.

- 이럴 때에는 데이터베이스에서 SQL 백업을 눌러주고 삭제하는 수 밖에 없다.

 

있었는데

 

이젠 없습니다

 

'WEB > PHP' 카테고리의 다른 글

FTP 설정 방법 - 고도몰  (0) 2023.05.18
The difference between "public" and "public static"?  (0) 2021.11.23
PHP 실행 지연(delay) 시키기  (0) 2021.11.23
mb_substr  (0) 2021.09.13
PHP Superglobal - $_REQUEST  (0) 2021.08.18
FTP 설정 방법
고도 쇼핑몰은 쇼핑몰에 외부 FTP 프로그램을 연결하여, 효과적인 쇼핑몰 운영이 가능합니다.

* e나무 무료형 쇼핑몰은 외부 FTP 접속이 지원되지 않습니다.
* 모든 고도 쇼핑몰은 쇼핑몰 관리자 내 webFTP를 지원합니다. * 쇼핑몰 메인계정 신청을 위해서는 대표도메인 연결이 필요합니다.
FTP란?
FTP(File Transfer Protocol)은 이용자의 PC와 쇼핑몰 호스팅 서버 간 파일을 송수신하는 프로그램을 말합니다. FTP는 파일 전송 전용 서비스이기 때문에, 많은 양의 파일을 일괄적으로 주고 받을 때 효과적입니다.

쇼핑몰에 필요한 파일이 대량이고, 빈번하게 전송이 필요한 경우 FTP를 이용하면 효율적으로 쇼핑몰을 운영할 수 있습니다.
외부 FTP 프로그램을 이용한 FTP 접속 방법
대표적인 공개 FTP 접속 프로그램인 ‘Filezilla’로 고도 쇼핑몰의 FTP 접속 방법을 알아보겠습니다.
* 외부 FTP 접속이 허용되는 고도 쇼핑몰은 ‘Filezilla’ 외 FTP 프로그램으로도 접속이 가능합니다.

1. ‘Filezilla’ 프로그램을 내려 받아 설치를 완료합니다. [공식 다운로드 페이지 바로가기]

2. 상단 메뉴 부분에 아래와 같이 입력 후, ‘빠른 연결’을 클릭합니다.
(호스트 : www를 제외한 쇼핑몰주소 | 사용자명 : FTP 아이디 | 비밀번호 : FTP 비밀번호 | 포트 : 21)

* FTP 계정정보는 [마이고도 > 쇼핑몰 관리 > 쇼핑몰 목록 > 이용 중 쇼핑몰 ‘서비스관리’ > 기본관리 > FTP 관리]에서 신청 또는 확인할 수 있습니다.

3. 연결이 완료되면 내 PC와 쇼핑몰 호스팅 간 파일 업다운로드가 가능합니다.
(로컬 사이트가 내 PC영역, 리모트 사이트가 내 쇼핑몰 호스팅 영역입니다.)
유의사항
- e나무 무료형 쇼핑몰의 경우 외부 FTP 접속이 지원되지 않습니다.(쇼핑몰 관리자 내 webFTP 사용 가능)
- FTP 접속 정보는 외부에 유출되지 않도록 유의하여 주시기 바랍니다.

© NHN godo: Corp. All rights Reserved.

위 내용은 엔에이치엔고도㈜의 저작물로, 제공되는 자료에 대한 무단 복제 및 배포를 금합니다.

47
18

What does static mean?

I know public means that it can be accessed from outside the class, and private only from inside the class…

 

 

42
 

Static means that it can be accessed without instantiating a class. This is good for constants.

Static methods need to have no effect on the state of the object. They can have local variables in addition to the parameters.'

 

 

 

 

40

public: Public declared items can be accessed everywhere.

protected: Protected limits access to inherited and parent classes (and to the class that defines the item).

private: Private limits visibility only to the class that defines the item.

static: A static variable exists only in a local function scope, but it does not lose its value when program execution leaves this scope.

final: Final keywords prevents child classes from overriding a method by prefixing the definition with final. If the class itself is being defined final then it cannot be extended.


Beside of PHP:

transient: A transient variable is a variable that may not be serialized.

volatile: A variable that might be concurrently modified by multiple threads should be declared volatile. Variables declared to be volatile won't be optimized by the compiler because their value can change at anytime.

 

 

 

0

Example:

public class Methods_Test1 
{   
    public static void Display(String Name)
    {
        System.out.println("Hello There " + Name);
        System.out.println("I am from Display method");
    }


    public static void main(String[] args) 
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter name");
        String name = sc.next();
        Obj.Display(name);

    }

The public static void Display(String name) method accessible as static method within its own class which can be accessed without creating object of the class where as the same method behaves as public for the outside classes which can be accessed by creating object.

 

 

 

'WEB > PHP' 카테고리의 다른 글

[고도몰 Pro+] SFTP 접속이 안됨과 동시에 문제 해결하기  (0) 2023.05.25
FTP 설정 방법 - 고도몰  (0) 2023.05.18
PHP 실행 지연(delay) 시키기  (0) 2021.11.23
mb_substr  (0) 2021.09.13
PHP Superglobal - $_REQUEST  (0) 2021.08.18

PHP 스크립트(script) 실행(execution)시 테스트 등의 목적으로 실행을 지연(delay)시켜야할 경우가 있습니다. 이때 사용할 수 있는 함수 입니다.

 

 

1. 초 단위로 지연

 

int sleep ( int $seconds )

 

$seconds로 주어진 초 만큼 실행을 지연합니다. 성공시 0을 반환, 실패시 FALSE를 반환합니다. 음수를 지정하면 오류입니다. Warning이 발생합니다.

 

<?php
// ...
// 2초간 지연합니다.
sleep(2);
//...
?>

 

 

2. 마이크로초 단위로 지연

 

void usleep ( int $micro_seconds )

 

$micro_seconds로 주어인 마이크로 초(백만분의 1초) 만큼 실행을 지연합니다. 값을 반환하지 않습니다. 음수를 지정하면 오류입니다. Warning이 발생합니다.

 

<?php
// ...
// 2초간 지연합니다.
usleep(2000000);
// ...
?>

 

 

3. 지정된 시간까지 지연

 

bool time_sleep_until ( float $timestamp )

 

$timestamp 로 주어진 시간까지 지연합니다. 성공시 TRUE, 실패시 FALSE를 반환합니다. 과거 시간을 지정하면 오류입니다. Warning이 발생합니다.

 

<?php // 2초 지연 time_sleep_until(time() + 2); // 0.2초 지연 time_sleep_until(microtime(true) + 0.2); ?>

 

※ 참고

- int time(void) : January 1 1970 00:00:00 GMT 부터 지금까지의 초를 반환합니다.

- mixed microtime ([ bool $get_as_float = false ] ) : 현재의 타임스탬프를 마이크로초로 반환합니다. 인자로 주어지는 $get_as_float가 TRUE이면 마이크로초에 가장 근접한 초값을 float 타입으로 반환하고, FALSE 이면 string 타입의 값을 반환합니다.

 

PHP 프로그램을 지연시키는 다양한 방법을 알아보았습니다.



출처: https://offbyone.tistory.com/197 [쉬고 싶은 개발자]

+ Recent posts